【问题标题】:Rails, paperclip, uploading a photo from a rake task?Rails,回形针,从 rake 任务上传照片?
【发布时间】:2010-11-17 20:15:31
【问题描述】:

如何通过控制台或在 rake 任务中上传带有回形针的文件?我有点不确定如果没有表格这是如何工作的。有人处理过吗?


更新

所以我发现了这个:

image = Image.new(:storage => File.open('/path/to/my/image.png', rb))

但我想这让我的问题更简单一些,比如说我的照片实际上是在线的(在不同的域中),我想用回形针拍摄它并将其转换并上传到我的服务器。是否有可能以某种方式给File.open 一个网址?

【问题讨论】:

    标签: ruby-on-rails paperclip


    【解决方案1】:

    试一试。

    require 'open-uri'
    image = Image.new(:storage => open("http://path.to.the/image.png"))
    

    当我在我刚刚做的终端中尝试它时工作:

    require 'open-uri'
    image = open("http://i.stack.imgur.com/qjKuQ.jpg")
    

    导致:

    => #<File:/var/folders/Zo/ZoJYH-A6Eg8GQ3pV0fIyhU+++TU/-Tmp-/open-uri20101117-5813-1h64t5k>
    

    【讨论】:

    • Hugo 就在这里,您只需将 File 对象传递给模型上的访问器设置。
    • Ryan,我认为我的问题是我使用 S3 作为我的存储。有什么想法吗?
    • 最后这个方法解决了我从其他平台移动照片的问题!但是还有一个问题。使用这种方法,回形针可以不带扩展名保存照片,因为它是从临时文件中获取的。如何解决这个问题?谢谢!
    • 哦,我在这里找到了它stackoverflow.com/questions/11523171/…。感谢您迈出第一步!
    【解决方案2】:

    但是,它将文件保存为“open-uri12345sdf-1301fp”。 (无扩展名)在数据库中。我们如何在 photo_file_name 字段中保存原始文件名。

    【讨论】:

      【解决方案3】:

      我认为这是一种 hack,但我只是在我的迁移中使用 ActionDispatch::Http::UploadedFile.new 对象复制了文件并像那样运行它。

      【讨论】:

        猜你喜欢
        • 2013-05-06
        • 2013-11-09
        • 1970-01-01
        • 1970-01-01
        • 2011-01-03
        • 2023-04-01
        • 1970-01-01
        • 2015-05-09
        • 2011-06-14
        相关资源
        最近更新 更多