【问题标题】:How to remove a specific file in Rails public folder?如何删除 Rails 公共文件夹中的特定文件?
【发布时间】:2011-03-04 21:14:44
【问题描述】:

我的网络应用程序中的用户能够上传文件。我使用回形针来处理文件附件问题。如果我想以编程方式删除任何特定的用户上传的文件,有什么方法吗?

【问题讨论】:

    标签: ruby-on-rails ruby file paperclip public


    【解决方案1】:

    Ruby 的File 类有一个delete 方法:

    File.delete(Rails.root + '/foo.jpg')
    

    【讨论】:

    • 嗨,约翰。有什么方法可以创建文件夹吗?
    • @John:谢谢。我想通了。
    • 我认为您需要将路径名转换为字符串,例如 Rails.root.to_s
    【解决方案2】:

    删除它应该像将其设置为 nil 一样简单

    # assuming...
    has_attached_file :picture
    
    @thing.picture = nil
    @thing.save
    

    @thing.update_attribute(:picture, nil)
    

    Paperclip 会为您处理好...

    【讨论】:

    • 谢谢。我在 Paperclip 自述文件中忽略了,之前无法弄清楚。 >.
    • 我喜欢定义一个 delete_thing= 方法,该方法查找典型的布尔形式返回值,如果传入的内容为真,则删除照片。 def delete_thing=(val) thing = nil if val =~ /true/on/1/;结束
    猜你喜欢
    • 1970-01-01
    • 2018-05-01
    • 2014-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-20
    • 1970-01-01
    • 2021-12-22
    相关资源
    最近更新 更多