私はAulasとStudents Through Gradesを持っています。
成績では生徒の名前とアウラの名前を表示したい。
<% @grades.each do |grade| %>
<%= grade.student.name %>
<%= grade.aula.name %>
<% end %>
生徒だけを残せば完璧ですが、Aula の名前を取得したい場合は、次のようになります。
undefined method `aula' for #<#<Class:0x30a37e8>:0x2fffeb0>
これが私のコードです
class Aula < ActiveRecord::Base
attr_accessible :name
has_many :grades
has_many :students, :through => :grades
end
class Student < ActiveRecord::Base
attr_accessible :name
has_many :grades
has_many :aulas, :through => :grades
end
class Grade < ActiveRecord::Base
attr_accessible :grammar, :oral, :participation, :writing
belongs_to :aula
belongs_to :student
end
問題は、grade.aula.name
nilの場合、このエラーが発生することだと思います。データがそこにある場合、それは完全に機能します。
のようなアクションを行うにはどうすればよいif grade.aula.name.nill? grade.aula.name = 'write the name here'
ですか?