销毁具有 ActiveStorage + act_as_paranoid - Rails 5.2 的模型后出现 SystemStackError
SystemStackError after destroying a model having ActiveStorage + act_as_paranoid - Rails 5.2
免责声明:问题已记录here但为了引起广大社区的更多关注,我将问题发布在这里。
我对使用主动存储的模型进行了超级简单的设置 acts_as_paranoid
class FileUpload < ApplicationRecord
acts_as_paranoid
has_one_attached :file
end
当模型被销毁时,它会进入死循环。你遇到过这样的问题吗?你有什么解决办法吗?
使用
has_one_attached :file, dependent: :purge_now
当您销毁任何记录时,它会安排一个作业来销毁给定记录的相关文件。
因此当作业尝试删除文件时 rails 无法找到记录,因为它已被删除。
所以当我们使用:purge_now
并销毁记录时,它会删除与记录相关的文件,而不是安排删除作业。
免责声明:问题已记录here但为了引起广大社区的更多关注,我将问题发布在这里。
我对使用主动存储的模型进行了超级简单的设置 acts_as_paranoid
class FileUpload < ApplicationRecord
acts_as_paranoid
has_one_attached :file
end
当模型被销毁时,它会进入死循环。你遇到过这样的问题吗?你有什么解决办法吗?
使用
has_one_attached :file, dependent: :purge_now
当您销毁任何记录时,它会安排一个作业来销毁给定记录的相关文件。
因此当作业尝试删除文件时 rails 无法找到记录,因为它已被删除。
所以当我们使用:purge_now
并销毁记录时,它会删除与记录相关的文件,而不是安排删除作业。