Ruby on rails 嵌套资源的路由中的单个自定义参数名称Rails 4.1
我对rails路由中嵌套资源的参数名有疑问 例如,我有:Ruby on rails 嵌套资源的路由中的单个自定义参数名称Rails 4.1,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,我对rails路由中嵌套资源的参数名有疑问 例如,我有: resources :controller1, param: :controller_id do resources :controller2 end 我有路线: controller1/:controller_id/ ... controller1/:controller_controller_id/controller2/... ... 我想要控制器1的单个:控制器\u id 我知道这看起来很糟糕,但是 这是怎么回事? 谢谢
resources :controller1, param: :controller_id do
resources :controller2
end
我有路线:
controller1/:controller_id/
...
controller1/:controller_controller_id/controller2/...
...
我想要控制器1的单个:控制器\u id
我知道这看起来很糟糕,但是
这是怎么回事?
谢谢 试试看
resources :controller1, param: :controller_id, path: "" do
resources :controller2, path: ""
end
这个怎么样:
resources :controller1, param: :controller_id do
member do
resources :controller2
end
end
将产生
GET /controller1/:controller_id
GET /controller1/:controller_id/controller2
GET /controller1/:controller_id/controller2/:id
...
谢谢,但是没有,我有嵌套请求的控制器idagain@user3049436您希望它用于嵌套资源还是父资源?我希望它用于父资源和嵌套资源,例如:controller1/:controller\u id/controller1/:controller\u id/controller2/…我处于相同的情况,您是如何解决此问题的?请删除“param::controller_id”,然后您可以使用params[:id]或params[:controller_id]检查应用程序控制器中的路由(操作)以获取数据。如果遇到相同的问题,可能会重复,那么您必须修复嵌套的资源路径帮助程序,因为它们是绝对的,
新建控制器2\u路径
而不是新建控制器1\u控制器2\u路径