2011-10-26 169 views
1

我有嵌套在另一个资源:rails如何嵌套资源路径?

resource :users do 
    resource :posts 
end 

官方指导价说我应该有这个网址:

/users/:id/posts/:id 

showupdateeditdelete的职位。但实际上我有:

ruby-1.9.2-p290 > app.users_posts_path(1,2) 
=> "https://stackoverflow.com/users/posts.1?=2" 

怎么回事?

+0

请说明你在哪里看到'guide'。 –

+0

http://guides.rubyonrails.org/routing.html#nested-resources –

+0

'/ users /:id/posts'(注意复数的帖子)意味着该用户的所有帖子,但如果你想显示/编辑/更新/删除帖子然后它是/ user /:id/post /:id –

回答

2

您需要使用标准的多条路径,而不是单数,所以用resources代替resource

resources :users do 
    resources :posts 
end 
+0

保存我的日子,真的。 –

0

你试试,看看你的路线?在您的控制台类型:

$ bundle exec rake routes 

通常user_posts_path是上市项目的GET请求(你确定你的路由名称的用户是复数?),所以你只需要提供一个代表你的第一个参数:ID ,与用户有关。