バカなことをしているのかもしれませんが…
アプリ/モデル/user.rb:
class User < ActiveRecord::Base
has_one :totem
config/routes.rb:
resources :users do
resource :totem
end
app/controllers/totems_controller.rb:
class TotemsController < ApplicationController
before_filter do
@user = User.find(params[:user_id])
end
def new
@totem = @user.build_totem
end
end
アプリ/ビュー/トーテム/new.html.erb:
<%= form_for [@user, @totem] do |f| %>
<% end %>
次に、に移動すると/users/123/totem/new
、次のエラーが表示されます。
ActionView::Template::Error (undefined method `user_totems_path' for #<#<Class:0x007f9d3c843b00>:0x007f9d3bb6dd68>):
しかし、routes.rbresource :totem
の代わりに使用しているためresources :totems
、使用すべきパス ヘルパーはuser_totem_path
. 正しいパスヘルパーを使用しようとしないのはなぜですか?