【问题标题】:Rails 3 create a route to nested independent pageRails 3 创建到嵌套独立页面的路由
【发布时间】:2013-01-31 20:24:01
【问题描述】:

我有 3 层嵌套。

routes.rb 看起来像这样

    resources :clients do
       resources :departments do
         resources :tasks
       end
    end

我想创建一个如下所示的自定义路径

/clients/:client_id/departments/:department_id/tasks/data

我已尝试添加以下内容

    resources :clients do
       resources :departments do
         resources :tasks
           member do
             get "data"
           end
       end
    end

这会创建路线

/clients/:client_id/departments/:department_id/tasks/:task_id/data

如何删除路径中的 :task_id 部分?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 routing


    【解决方案1】:

    成员路由作用于成员,这就是它需要 id 的原因。集合作用于集合,因此不需要 id。

    resources :clients do
       resources :departments do
         resources :tasks do
           collection do
             get "data"
           end
         end
       end
    end
    

    【讨论】:

      【解决方案2】:

      你应该使用

      resources :clients do
         resources :departments do
           resources :tasks
             get "data", :on => :collection
         end
      end
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-09-07
        • 1970-01-01
        • 1970-01-01
        • 2011-05-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多