我看到默认情况下,carrierwave 不会删除链接到模型的文件。怎么做?
问问题
2882 次
4 回答
2
Carrierwave 应该会自动为您从 S3 中删除文件。我刚刚在 Rails 3.1 应用程序上对此进行了测试。
于 2011-09-12T12:52:08.283 回答
1
你需要打电话
@image.destroy
不是
@image.delete
还使用 aws s3 面板上的刷新按钮
于 2011-12-02T02:13:44.650 回答
0
我不熟悉载波,但总的来说,连接到载波after_destroy
可能是你想要的。
class Model < ActiveRecord::Base
after_destroy :delete_linked_file
def delete_linked_file
# Delete the linked file here
end
end
于 2011-01-17T13:41:28.960 回答
0
是的,你可以这样做
def delete_image_folder
FileUtils.remove_dir(File.join(Rails.root, File.join( 'public' , file_name.store_dir)), :force => true)
end
但请记住,如果您更改了 Carrierwave 配置根目录,则应将其考虑在内(默认为公共,因此此代码将起作用)
于 2013-07-03T16:15:36.447 回答