我搜索并搜索过,我找不到一个在Rails 3中列出routes.rb语法的页面.有指南,概述,甚至是高级示例,但为什么没有一个页面说明每个关键字的确切语法?? 这一页
http://www.engineyard.com/blog/2010/the-lowdown-on-routes-in-rails-3/
包含许多高级示例,但没有花时间讨论给出的所有示例的行为.如果有人能指出我打破routes.rb语法的页面,我将不胜感激.
这是我想解决的问题.我有两个型号modelA和modelB.关系是modelA has_many modelB和modelB belongs_to modelA.我在modelA的命名空间下为modelB创建了控制器.所以在我的rails app文件夹中,我有
app/controllers/modelA_controller.rb
app/controllers/modelA/modelB_controller.rb
Run Code Online (Sandbox Code Playgroud)
我希望我的路线是这样的:
http://localhost:3000/modelA/:modelA_id/modelB/ [index]
http://localhost:3000/modelA/:modelA_id/modelB/:modelB_id [show]
etc.
Run Code Online (Sandbox Code Playgroud)
我在routes.rb中尝试了以下操作,但没有一个工作:
resources :modelA do
resources :modelB
end
--
resources :modelA do
member do
resources :modelB
end
end
--
namespace :modelA do
resources :modelB
end
--
match '/modelA/:modelA_id/modelB/action', :to => '/modelA/modelB#action'
Run Code Online (Sandbox Code Playgroud)
我知道我尝试的一些事情显然是错的,但是当你花了两天时间解决一个问题时,一切都会发生!