我似乎在Rails 3.1中要求嵌套资源,而不是嵌套照片:
resources :photos
resources :gallery do
resources :photos
end
否则我的form_for将不适用于要提交的照片或要查看的图库:
<%= form_for ([@gallery, @photo],:html => {:multipart => true}) do|f| %>
对画廊展示抱怨:
No route matches {:id=>#<Photo id: 23 ...
这是正常行为吗,我总是希望我的用户只能在图库的上下文中创建照片,但现在他们也可以访问照片/新照片,而我只让他们访问图库/:id / photos /新
答案 0 :(得分:0)
路线可能很棘手。有时使用复数形式而不是单数形式会导致错误,特别是对于路径助手而言。复数的“画廊”是“画廊”
>> "Gallery".pluralize
=> "Galleries"
使用rake routes
检查您的路线,我认为您应该使用复数形式
resources :galleries do
resources :photos
end