运行Rails 3.2.1,我有以下路由:
resources :photos, :path_names => { :new => 'upload' } do
resources :votes
end
出于某种原因,如果我浏览photos/1/votes/new
我正在
ActiveRecord::RecordNotFound in VotesController#show
Couldn't find Vote with id=new
为什么Rails会将votes/new
路由到show动作?有没有人以前遇到过这个问题?
答案 0 :(得分:0)
捂脸!
我没有意识到:path_names
选项也适用于嵌套资源 - 投票模型正在votes/upload
而不是votes/new
寻找新操作。
我按照以下方式更改了路线,一切顺利:
resources :photos do
collection do
get 'upload' => 'photos#new'
end
resources :votes
end