2011-08-30 105 views
0

现在我有一个admin.domain.com子网域,有一个模块范围:Rails的路线:嵌套的作用域/命名空间

constraints(AdminDomain) do 
    scope :module => "admin" do 
     resources :visitors 
    end 
    end 

这使得应用程序/控制器的管理子域控制器命中所有请求/管理/。

我想什么,现在做的是一样的东西:

constraints(AdminDomain) do 
    scope :module => "admin" do 
     resources :visitors 
     scope "history", :as => "history" do 
     resources :visitors 
     end 
    end 
    end 

其中最终目标是使admin.domain.com/history/visitors打控制器:应用程序/控制器/管理/历史/ visitors_controller.rb。

但是此路径仍然会查找app/controllers/admin/visitors_controller.rb。

任何想法?

回答

5

namespace就是我一直在寻找:

constraints(AdminDomain) do 
    scope :module => "admin" do 
     resources :visitors 
     namespace :history do 
     resources :visitors 
     end 
    end 
    end 

而我却在app/controllers/admin/history/visitors_controller.rb

定义 Admin::History::VisitorsController
0

简单的方法来定义特定的控制器就像:

:controller => admin/history/visitors