【问题标题】:saving files outside the public folder with attachment_fu in ruby on rails在 ruby​​ on rails 中使用 attachment_fu 将文件保存在公用文件夹之外
【发布时间】:2009-05-20 17:40:47
【问题描述】:

我在 Rails 应用程序中使用 attachment_fu 来处理文件上传,我想将它们保存在应用程序根目录中名为附件的目录中。但是,我似乎无法让这个插件将文件保存在公共目录以外的任何其他目录中。谁能告诉我该怎么做?

谢谢

-C

【问题讨论】:

    标签: ruby-on-rails path attachment-fu


    【解决方案1】:

    你有没有尝试过什么?

    has_attachment :storage => :file_system, :path_prefix => 'attachments/'
    

    【讨论】:

    • 是的,我已经尝试了几种 path_prefix 选项的组合,除非它们以 'public/' 开头,否则它们似乎都不起作用。这是我尝试上传文件时从该选项中得到的信息:没有这样的文件或目录 - /storage/daisi/branches/development/public//storage/daisi/branches/development/attachments/0000/0007/524_IMS.yml
    • 奇怪。我想您总是可以在公共目录中为应用程序根级别的目录创建一个别名。我想在某种程度上这是有道理的。 Web 服务器(无论它是什么)只真正了解“public/”目录,因此所有静态文件都需要包含在其中。当您上传文件时,它需要位于“public/”目录中才能通过 URL 寻址。也就是说,我确信在某些情况下您可能希望上传文件并使其无法通过 URL 寻址。
    • 我现在真的觉得问这个问题有点愚蠢,因为我意识到我的问题不是插件本身,而是文件类中的一些其他代码,公共目录硬编码在读取文件数据的方法(这些都是 .yml 文件)。所以,你的解决方案实际上是正确的。
    • 很高兴听到您解决了这个问题。在那一秒钟,我说服自己放弃了自己的答案:-P
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-06
    • 2013-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-20
    • 1970-01-01
    相关资源
    最近更新 更多