【发布时间】:2018-10-01 09:12:12
【问题描述】:
我不知道怎么问这个问题...
但我正在使用嵌套 ROUTES,如下所示。
我喜欢知道 Business ID 总是可以使用params[:business_id] 找到,显然除了实际的业务控制器需要我使用params[:id]。
有没有办法将路由资源 id 参数更改为始终为 :business_id 而不必像 Business.find(params.values_at(:business_id, :id).first)??
business_exports GET /businesses/:business_id/exports(.:format) businesses/exports#index
POST /businesses/:business_id/exports(.:format) businesses/exports#create
new_business_export GET /businesses/:business_id/exports/new(.:format) businesses/exports#new
edit_business_export GET /businesses/:business_id/exports/:id/edit(.:format) businesses/exports#edit
business_export GET /businesses/:business_id/exports/:id(.:format) businesses/exports#show
PATCH /businesses/:business_id/exports/:id(.:format) businesses/exports#update
PUT /businesses/:business_id/exports/:id(.:format) businesses/exports#update
DELETE /businesses/:business_id/exports/:id(.:format) businesses/exports#destroy
business_replenishments GET /businesses/:business_id/replenishments(.:format) businesses/replenishments#index
business_offer_prices GET /businesses/:business_id/offer_prices(.:format) businesses/offer_prices#index
POST /businesses/:business_id/offer_prices(.:format) businesses/offer_prices#create
business_unmatched_listings GET /businesses/:business_id/unmatched_listings(.:format) businesses/unmatched_listings#index
POST /businesses/:business_id/unmatched_listings(.:format) businesses/unmatched_listings#create
business_profit_loss_reports GET /businesses/:business_id/profit_loss_reports(.:format) businesses/profit_loss_reports#index
businesses GET /businesses(.:format) businesses#index
POST /businesses(.:format) businesses#create
new_business GET /businesses/new(.:format) businesses#new
edit_business GET /businesses/:id/edit(.:format) businesses#edit
business GET /businesses/:id(.:format) businesses#show
PATCH /businesses/:id(.:format) businesses#update
PUT /businesses/:id(.:format) businesses#update
DELETE /businesses/:id(.:format) businesses#destroy
【问题讨论】:
-
我已经为您的问题添加了答案,但是,作为旁注,您应该问自己为什么要摆脱 Rails 的默认
:id作为后者的动态部分路线。 -
我想在 BUSINESS 级别共享一个顶级身份验证控制器,并且不必在
params[:id]和params[:business_id]之间来回切换
标签: ruby-on-rails