Ruby on rails 内的自定义RESTful路由有许多嵌套
项目有许多任务,任务有一个称为“批准”的自定义RESTful操作 我希望助手看起来像这样批准项目\u任务\u url 这对我不起作用:Ruby on rails 内的自定义RESTful路由有许多嵌套,ruby-on-rails,ruby,routing,routes,Ruby On Rails,Ruby,Routing,Routes,项目有许多任务,任务有一个称为“批准”的自定义RESTful操作 我希望助手看起来像这样批准项目\u任务\u url 这对我不起作用: map.resources :projects, :has_many => :tasks, :member => { :approve => :post } 我曾经有过同样的问题,但我从来没有寻找长期和艰苦的解决办法。相反,我只是选择了从那时起我一直使用的旧款:
map.resources :projects,
:has_many => :tasks,
:member => { :approve => :post }
我曾经有过同样的问题,但我从来没有寻找长期和艰苦的解决办法。相反,我只是选择了从那时起我一直使用的旧款:
map.resources :projects do |project|
project.resources :tasks, :member => {:approve => :post}
end
这将为您提供所需的approve\u project\u task\u url(@project,@task)
routes/helpers
我想你可能已经知道这种方法了?如果是这样,并且您不喜欢,希望我能从您的其他回答中学到一些东西:)您也可以使用“rake routes”查看创建了哪些路由。这就是修复方法:有很多只是一个捷径,当它并不复杂。
**This is syntax correction to above solution**
map.resources :projects do |project|
project.resources :tasks, :member => {:approve => :post}
end