2
我正在使用paper_trail gem作爲博客系統來存儲文章的版本。不過,我不需要在文章銷燬後保留任何版本的文章。刪除模型時刪除所有版本的paper_trail
如何在銷燬模型實例時刪除所有版本的模型實例?我只能在文檔中看到全局刪除版本的方法。
任何想法?
我正在使用paper_trail gem作爲博客系統來存儲文章的版本。不過,我不需要在文章銷燬後保留任何版本的文章。刪除模型時刪除所有版本的paper_trail
如何在銷燬模型實例時刪除所有版本的模型實例?我只能在文檔中看到全局刪除版本的方法。
任何想法?
before_destroy do
self.versions.destroy_all
end
默認情況下has_paper_trail
創建has_many :versions
關聯。所以你可以很容易地銷燬所有這些。但確保在你的模型中你有這個:
has_paper_trail on: [:create, :update] #because you dont want to keep record for destroy event.
爲什麼你做self.versions.collect(&:銷燬)而不是self.versions.destroy_all? –
根據您的建議更改:) – Muntasim
哦,好吧!我實際上並不知道是否有區別。 –