4

我正在将 paper_trail gem 用于博客系统来存储文章的版本。但是,我不需要在文章被销毁后保留任何版本的文章。

如何在模型实例被销毁时删除它的所有版本?我只在文档中看到了一种全局删除版本的方法。

有任何想法吗?

4

1 回答 1

11
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.
于 2013-06-19T23:59:28.670 回答