0

我有两个具有简单关联的模型

class Door 
  belongs_to :main_room, class_name: 'Room', inverse_of: :door
end 

####

class Room
  has_one :door, foreing_key: :main_room_id
end

你能告诉我为什么吗

door.build_main_room.door 

返回零?

升级版:

door.build_main_room 
# =>  #<Room id: nil>

UPD2: 哦,伙计们,这完全是我的错。关联是正确的,但是在 Room 类door中定义了方法并且它返回 nil。没有它一切正常。

4

1 回答 1

0

你的代码

door.build_main_room.door 

将返回 nil,因为您尚未保存构建的对象。要保存它,您需要使用

door.save

如果保存成功,那么只有您可以访问

door.main_room.door
于 2012-09-18T11:23:12.273 回答