ruby-on-rails – Rails:如何使用范围与参数,并使用默认值参数的路由

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails:如何使用范围与参数,并使用默认值参数的路由前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在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:http://mydomain.com/some_subdomain/order/new.这个URL被映射到具有params [:subdomain] =“some_subdomain”的订单控制器的新操作.我想使用命名路径new_order_url(:subdomain =>“some_subdomain”).

但是我想映射http://mydomain.com/order/new到订单控制器,action new和params [:subdomain] =“default”.而且我想使用命名路径new_order_url这样的URL.

做最好的做法是什么?

解决方法

答案是“use()和defaults”
scope "/(:subdomain)",:defaults => {:subdomain => "default"} do
  ...
end

http://guides.rubyonrails.org/routing.html#dynamic-segmentshttp://guides.rubyonrails.org/routing.html#defining-defaults

猜你在找的Ruby相关文章