在Rails4的路由资源中更改parent:parent_id参数的名称
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Rails4的路由资源中更改parent:parent_id参数的名称相关的知识,希望对你有一定的参考价值。
我可以使用in this way更改路由中的:id参数的名称,但这可以更改嵌套资源的参数,就像我有
resources :companies, param: :company_id do
resources :shares, only[:index]
end
这会产生像这样的路线
/companies/:company_company_id/shares
哪个错了我想要这样的路线
/companies/:company_id/shares
我需要做什么?
答案
我以前经历过这个并得到了下面的解决方案......虽然很丑,但我还没有找到更好的方法。
更改:
resources :companies, param: :company_id do
resources :shares, only: [:index]
end
要:(注意空白only: []
)
resources :companies, param: :company_id
resources :companies, only: [], param: :id do
resources :shares, only: [:index]
end
现在,当你运行rake routes
时,你会看到正确的:
/companies/:company_id/shares(.:format)
除了所有其他companies
端点:
/companies(.:format)
/companies(.:format)
/companies/new(.:format)
/companies/:company_id/edit(.:format)
/companies/:company_id(.:format)
/companies/:company_id(.:format)
/companies/:company_id(.:format)
/companies/:company_id(.:format)
所有保持相同的:company_id
param名称。
以上是关于在Rails4的路由资源中更改parent:parent_id参数的名称的主要内容,如果未能解决你的问题,请参考以下文章
React hooks - useState() 中的状态在路由更改时不会重置