使用Paperclip从后台作业上传文件

时间:2013-05-05 14:02:12

标签: ruby-on-rails paperclip

我们使用Paperclip通过向用户显示浏览对话框将文件上传到S3。这很好用&平滑。但是,现在我希望一些后台作业会进行一些爬行,当它到达所需文件时,也要上传那个。显然我此时无法使用浏览对话框。

我看到使用Paperclip的所有示例都是关于从客户端手动选择文件(通过更新视图)。我没有找到如何设置要通过代码上传的文件,并且由于UI组件触发了一些“幕后”工作,这些工作创建了一些对象,其中包含我无法找到如何使用或调用的其他信息。

有什么想法吗? 谢谢

1 个答案:

答案 0 :(得分:0)

您可以在不使用浏览对话框的情况下创建回形针上传,也不需要用户操作。 Paperclip需要一个文件,只需生成一个tmp文件或使用存储中的现有文件。

您的Paperclip模型类:

class YourPaperclipmodel < ActiveRecord::Base
  has_attached_file :data
end

生成文件:

YourPaperclipmodel.create(:data => File.open("path to existing file or tmp generated file"))