forによって返されるハッシュのどこに表示されるPerson
has_one
Brain
と期待する必要がありますか? もしそうなら、それを実現する方法は?brain
attributes()
Person
Rails コンソール出力:
1.9.3p327 :003 > Person.new.attributes
=> {"id"=>nil, "name"=>nil, "created_at"=>nil, "updated_at"=>nil}
1.9.3p327 :004 > Brain.new.attributes
=> {"id"=>nil, "weight_kg"=>nil, "created_at"=>nil, "updated_at"=>nil, "person_id"=>nil}
2 つのモデルは次Person
のBrain
とおりです。
class Person < ActiveRecord::Base
has_one :brain
attr_accessible :name
attr_accessible :brain
attr_accessible :brain_attributes
accepts_nested_attributes_for :brain
end
class Brain < ActiveRecord::Base
belongs_to :person
attr_accessible :weight_kg
attr_accessible :person
attr_accessible :person_attributes
accepts_nested_attributes_for :person
end
person_id
テーブルに列があるBrain
ため、の属性に表示されます。テーブルにそのような列が存在する必要はありません。brains
person_id
people