[英]How to add invalid records to has_many :through association
我有一個帶有has_many-association房間的房屋模型。
house = House.find 1
dining_room = Room.find 1
living_room = Room.find 2
living_room不是有效的數據集。 所以如果我把房間加到房子里
house << dining_room
house << living_room
未添加living_room,因為它無效。
將現有記錄添加到has_many-association中時,如何跳過驗證?
您可以嘗試執行以下操作,將Room
對象與House
對象相關聯,從而跳過驗證:
在room.rb
聲明這樣的room.rb
def associate_room_to_house!(house)
self.house_id = house.id
self.save(:validate => false)
end
然后對無效的房間對象使用此方法。
house = House.find 1
living_room = Room.find 2
living_room.associate_room_to_house!(house)
如果Living_room屬於房屋,則只需在該客廳記錄上更新house_id
即可匹配您想要的房屋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.