0

我有一个用户模型,并且没有为用户模型启用软删除。对于一个它的关联模型(has_many 关联)说帖子,启用了软删除。我想要的是在删除用户时硬删除所有相关的帖子。

在用户.rb

has_many :posts, dependent: :destroy

这只是软删除关联的记录。所以删除用户时会引发异常。是否有任何选项可以硬删除模型级别的关联记录?或者必须在 before_destroy 回调中做一些事情来实现这一点?

注意:已使用 paranoia gem 进行软删除

4

1 回答 1

1

如果要硬删除关联的帖子,可以使用dependent: :delete_all. 这将直接进入数据库删除记录并绕过before_destroyparanoia gem 注册的回调。

于 2019-03-17T09:58:36.270 回答