我在heroku上使用s3上传照片上传没问题。
我还有一种方法可以让用户从网址上传。
不幸的是,似乎在使用此方法上传图片时,它们会在没有文件扩展名的情况下保存。
所以我得到了这种图片网址链接......
http://s3.amazonaws.com/mysite/images/23/original.?1311799466
如果在本地上传了相同的图片,它将如下所示:
http://s3.amazonaws.com/mysite/images/23/original。的 JPG ?1311799466
在我的pic
模型中,这是我用来通过网址上传的代码:
def download_remote_image
begin
self.image = open(URI.parse(self.pic_url))
rescue
errors.add_to_base("- something is wrong with the image url.")
return false
else
return true
end
end
有什么想法吗?
答案 0 :(得分:1)
改变:
def download_remote_image
begin
io = open(URI.parse(pic_url))
def io.original_filename; base_uri.path.split('/').last; end
io.original_filename.blank? ? nil : io
rescue
end
end
仔细,最新版本的Paperclip在遇到io对象而不是File时抛出错误,不确定是否修复了它。
答案 1 :(得分:0)
由于您使用的是回形针,因此应使用回形针生成图片网址,例如:
self.image(:thumb)