上传文件后,是否可以在保存模型之前打开该文件?
我正在使用Paperclip将文件保存在/ public文件夹中。
class Book < ActiveRecord::Base
before_save :open_it
has_attached_file :upload
def open_it
a_file = open(upload.url) # this doesn't work before save ?
# ...
end
end
答案 0 :(得分:17)
def model_method
f = open(self.upload.queued_for_write[:original].url)
end
更新
根据生态系统的回复,使用.path
代替.url
更新版本的Paperclip宝石
答案 1 :(得分:6)
足够近,但.url
对我不起作用,path
有效。
file = open(uploaded.queued_for_write[:original].path)
做了这个伎俩。