我有一个用户模型,并没有为用户模型启用软删除。对于一个它的关联模型(has_many关联)说帖子,软删除被启用。我想要的是删除用户时硬删除所有相关的帖子。
在User.rb中
has_many :posts, dependent: :destroy
只是软删除相关记录。因此,删除用户时将引发异常。有没有选项来硬删除模型级别中的关联记录?或者必须在before_destroy回调中做一些事情来实现这个目标?
注意:使用偏执狂宝石进行软删除
如果您想要删除相关帖子,可以使用dependent: :delete_all
。这将直接进入数据库删除记录并绕过paranoia gem注册的before_destroy
回调。