據我所知,update_only不適用於has_many關聯。has_many + accepts_nested_attributes_for +:update_only => true
我正在更新嵌套的屬性,它每次都會創建新的子項並且不會刪除舊的子項。什麼是在每次更新時自動刪除它們的好方法(模仿:適用於has_one的update_only行爲)?
我知道about:allow_destroy。但是,我沒有孩子ID讓軌道知道應該銷燬什麼。
P.S.我最初在2012年問過這個問題,當時我發現了一個hacky解決方案來覆蓋assign_nested_attributes_for_collection_association。我想知道Rails中是否引入了任何解決此問題的方法。它看起來非常普遍的直接案例。我想知道爲什麼有一個內置的解決方案。
BTW。這個解決方案在Rails 4中變得更加棘手。它看起來像assign_nested_attributes_for_collection_association變得更加複雜,因此在處理所有場景時很難重寫。 –