routes.rbにこの設定があります:
resources :users do
resources :images do
resources :comments
end
end
ImagesControllerからshowアクションをロードすると、テンプレート ファイルには次のように表示されます。
...
= render 'comments/form', :@comment => @image.comments.new
...
そしてコメント/フォームファイルは次のとおりです。
= form_for [@comment.commentable, @comment] do |f|
.field
= f.text_field :body
.actions
= f.submit 'Comment'
そしてショーアクション:
def show
@user = User.find(params[:user_id])
@image = @user.images.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render :json => @image }
end
end
しかし、このページをブラウザにロードすると、次のエラーが発生します。
undefined method `image_comments_path' for #<#<Class:0x007feb48488128>:0x007feb48399668>
Rails がこのエラー メッセージを返すのはなぜですか?