我是ROR的新手,我似乎无法解决以下错误消息:
GolfClubsController#show中的NoMethodError
未定义的方法`id'对于#
以下是我的模特。
class GolfClub < ActiveRecord::Base
attr_accessible :name
has_many :course_nines
validates :name, presence: true, length: { maximum: 150 }
end
class CourseNine < ActiveRecord::Base
attr_accessible :name, :golfclub_id
belongs_to :golf_club
end
这是我的控制者:
def show
@golf_club = GolfClub.find(params[:id])
@courses = CourseNine.where(golfclub_id: @golf_club.id)
end
和我的show.html.erb
<% provide(:title, @golf_club.name) %>
<h1><%= @golf_club.name %></h1>
<% @courses.each do |course| %>
<li>
<%= course.name %>
</li>
<% end %>
答案 0 :(得分:0)
我发现错误是由于我命名我的fk的方式。它应该在CourseNine模型中命名为golf_club_id而不是golfclub_id。似乎rails总是寻找golf_club_id。