代码之家  ›  专栏  ›  技术社区  ›  Brad The App Guy

在heroku上使用s3存储选项时访问回形针临时文件

  •  9
  • Brad The App Guy  · 技术社区  · 14 年前

    我正在使用Paperclip gem调整上传照片的大小并将其存储在amazon S3上。在上传请求的生命周期中,我需要访问已调整大小的照片以将其传递给另一个web服务。

    我怀疑在图片上传到s3之前,imagemagik使用的地方创建了一个临时文件。我怎么才能找到它。

    1 回复  |  直到 14 年前
        1
  •  13
  •   Matt    14 年前

    根据 Paperclip readme 在处理之后和之前,它会调用一些回调。

    每个 附件:

    • 后处理前
    • 后处理

    只为一个 具体的 附件:

    • 附件处理前

    我认为在你的情况下,你应该使用 after 回拨以获取调整大小的照片。那么您应该可以使用 queued_for_write . 例如:

    class MyModel < ActiveRecord::Base
      has_attached_file :photo, :styles => { :small => "300x300>" }
      after_post_process :send_photo
    
      private
      def send_photo
        path = photo.queued_for_write[:small].path
        # upload the photo to the ws here
      end
    
    end