我正在使用carrierwave gem来上传文件。

我建立了一个系统,供用户将图像标记为不适当的图像,并供管理员删除图像。据我所知,在图像上调用destroy只会从表中删除路径名。

有没有办法让载波实际删除文件本身?或者在销毁图像路径时,rails应该自动删除文件吗?

最佳答案

不确定CarrierWave为此提供了什么,但是您可以将Ruby标准库中的FileUtils与ActiveRecord回调一起使用。

例如,

require 'FileUtils'
before_destroy :remove_hard_image

def remove_hard_image
  FileUtils.rm(path_to_image)
end

旁注:此代码来自内存。

关于ruby-on-rails - 销毁记录时如何使载波删除文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6553392/

10-11 08:59
查看更多