1

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/newshow アクションにルーティングされるのはなぜですか? 以前にこの問題に遭遇した人はいますか?

4

1 に答える 1

0

フェイスパーム!

このオプションがネストされたリソースにも適用されるとは思いもしませんでした。Votes モデルは の代わりに:path_names新しいアクション at を探していました。votes/uploadvotes/new

次のようにルートを変更しましたが、すべて問題ありません。

resources :photos do
  collection do
    get 'upload' => 'photos#new'
  end
  resources :votes
end
于 2012-04-09T03:29:47.310 に答える