簡體   English   中英

如何將無效記錄添加到has_many:通過關聯

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM