Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 处理Rails中深度嵌套资源的正确方法_Ruby On Rails_Routing_Nested Resources - Fatal编程技术网

Ruby on rails 处理Rails中深度嵌套资源的正确方法

Ruby on rails 处理Rails中深度嵌套资源的正确方法,ruby-on-rails,routing,nested-resources,Ruby On Rails,Routing,Nested Resources,所以我有四个模型,A,B,C和D,我把它们联系在一起,它们有很多并且属于。我想为D建立一个嵌套的路由结构 D属于A、B和C,不存在其他情况。但是,当为此路由创建嵌套资源时,我正在执行以下操作: resources :A do resources :B do resources :C do resources :D end end end 现在,这创建了我想要的url,但我不需要在这个表单下创建B和C的任何资源。因此,我的代码中任何地方都不会有新的路径调用。

所以我有四个模型,A,B,C和D,我把它们联系在一起,它们有很多并且属于。我想为D建立一个嵌套的路由结构

D属于A、B和C,不存在其他情况。但是,当为此路由创建嵌套资源时,我正在执行以下操作:

resources :A do
  resources :B do
    resources :C do
      resources :D 
    end
  end
end
现在,这创建了我想要的url,但我不需要在这个表单下创建B和C的任何资源。因此,我的代码中任何地方都不会有新的路径调用。当我创建或编辑新的D时,我只想知道A、B和C


处理此问题的正确方法是什么?

相关:。您应该知道,建议不要使用深度嵌套,因为它会使URI和帮助程序方法名和参数列表变长。感谢您在这里指导我。所以我的理解是,除非url仍然可读,否则这没什么大不了的