Ruby on rails Rails:如何使用带有params的scope和带有params默认值的route
我在routes.rb中有这样的行:Ruby on rails Rails:如何使用带有params的scope和带有params默认值的route,ruby-on-rails,routes,default,Ruby On Rails,Routes,Default,我在routes.rb中有这样的行: scope "/:subdomain/" do resource :order, :only => [:new, :create, :show, :update, :edit, :destroy] do get :cancel, :on => :member put :counter, :on => :member end end 例如,这是典型的url:。此url映射到具有参数[:子域]=“
scope "/:subdomain/" do
resource :order, :only => [:new, :create, :show, :update, :edit, :destroy] do
get :cancel, :on => :member
put :counter, :on => :member
end
end
例如,这是典型的url:。此url映射到具有参数[:子域]=“some_子域”的新订单控制器的操作。我想使用命名路由new\u order\u url(:subdomain=>“some\u subdomain”)
但我想映射到orders controller、action new和params[:subdomain]=“default”。我想为这样的url使用命名的route new_order_url
最佳做法是什么?答案是“使用()和默认值”
还有一个建议,使用
resource:order,:except=>[:index]
而不是:only
在动态参数周围放置()
的目的是什么?它的文档在哪里?@ArslanAli它使参数成为可选的:
scope "/(:subdomain)", :defaults => {:subdomain => "default"} do
...
end