rails3_acts_as_paranoid和carrierwave:保持图像的软删除

时间:2013-03-21 11:55:48

标签: ruby-on-rails-3 file-upload carrierwave acts-as-paranoid

我正在使用两个宝石rails3_acts_as_paranoidcarrierwave。偏执的软删除,硬删除和恢复功能很好。但是,当我软删除项目时,载波会删除存储的图像。

如何配置carrierwave或acts_as_paranoid,以便仅在硬删除时删除图像?

1 个答案:

答案 0 :(得分:2)

在模型中,在mount_uploader之后添加以下行:

mount_uploader :image, ImageUploader
skip_callback :commit, :after, :remove_image!

注意:它不会影响其他提交回调。例如:after_commit :do_smth仍然可以使用。

如果您想在执行硬删除时删除图像,可以调用@model_instance.remove_image!