1
我正在使用deep_cloneable寶石。我可以深度複製關聯,也可以從父對象中排除屬性。但是有沒有辦法從協會中排除屬性?如何在使用deep_cloneable gem時從關聯中排除屬性?
我正在使用deep_cloneable寶石。我可以深度複製關聯,也可以從父對象中排除屬性。但是有沒有辦法從協會中排除屬性?如何在使用deep_cloneable gem時從關聯中排除屬性?
它看起來像你可以顯式排除來自父母或關聯或兩者的屬性。下面直接是一個例子,從文檔:
pirate.dup :include => :parrot, :except => [:name, { :parrot => [:name] }]
對於你的情況,你要離開關:父像這樣的名字:
pirate.dup :include => :parrot, :except => [{ :parrot => [:name] }]
順便說一句,你還可以包括來自關聯的屬性,如果您想使用白名單技術,可以滿足您的需求。這是直接的例子,從文檔:
pirate.dup :include => :parrot, :only => [:name, { :parrot => [:name] }]
你可能要爲白名單做的是這樣的:
pirate.dup :include => :parrot, :only => [{ :parrot => [:name] }]
希望這有助於!