我正在使用带有Paperclip gem的Rails进行图片上传。我不知道它什么时候发生,因为我现在才注意到,但是在最近的某些时候他们肯定已经改变了Geometry类,因为它现在抛出一个错误。我正在使用Paperclip 3.3.1
我以前用过:
Paperclip::Geometry.from_file(photo.path(style))
获取照片几何图形,但现在当我这样做时,我得到了:
undefined method `to_file' for #<Paperclip::Attachment:0x007feba0009fb8>
我一直在寻找一些潜在客户来源,但这不是我的强项,而且我找不到任何太过暴露的东西。
任何人
答案 0 :(得分:2)
我正在使用3.3.1,并在我的photo.rb中将其保存以更新我的照片记录。
def do_before_save
temp = self.image.queued_for_write[:original]
unless temp.nil?
geo = Paperclip::Geometry.from_file(temp)
self.image_width = geo.width
self.image_height = geo.height
end
end
答案 1 :(得分:1)
这应该适用于具有隐私设置的S3,因为它将文件下载到/ tmp文件夹
Paperclip::Geometry.from_file(Paperclip.io_adapters.for(photo).path)
答案 2 :(得分:0)
想出来。如果其他人在Paperclip上使用Railscast中的裁剪代码,我必须做的就是将photo.path更改为photo.url。我正在使用S3,并且出于某种原因使用了相对路径,但它现在需要完整的URL。