1

我试图让我的 Rails 3 项目自动解析命名空间控制器,类似于 Rails 2 的行为。例如(轨道 2):

$ rails pathtest && cd pathtest
$ script/generate controller First
$ script/generate controller first/second
$ script/generate controller first/second/third
$ script/server

要求:

  • /first路由到第一个控制器
  • /first/second路由到第二个控制器
  • /first/second/third路由到第三个控制器

    但是,Rails 3 使用“野生控制器”路径产生不同的路由。

    $ rails new pathtest && cd pathtest
    $ rails generate controller First
    $ rails generate controller first/second
    $ rails generate controller first/second/third
    
    ## config/routes.rb
    Pathtest::Application.routes.draw do
      match ':controller(/:action(/:id(.:format)))'
    end
    
    $ rails server
    

    要求:

  • /first路由到第一个控制器
  • /first/second路由到 first#second
  • /first/second/third路由到 first#second :id => 'third'

    我开始认为这种命名空间控制器的自动解析不再可行了?有没有人找到一种方法来自动解析这样的命名空间控制器?

    谢谢!

  • 4

    1 回答 1

    1

    尝试这个:

    Pathtest::Application.routes.draw do
      resources :first do
        resources :second do
          resources :third
        end
      end
    end
    
    于 2011-02-04T20:13:36.320 回答