有时候我们的程序中需要远程获取并保存图片, 根据url去保存也很简单:
has_attached_file
:asset
,
:styles
=> {
:thumb
=>
"100x100>"
}
def
asset_from_url(url)
extname =
File
.extname(url)
basename =
File
.basename(url, extname)
file = Tempfile.
new
([basename, extname])
file.binmode
open(
URI
.parse(url))
do
|data|
file.write data.read
end
file.rewind
self
.asset = file
end
|
使用:
image = Image.new
image.asset_from_url(url)
image.save
其他详情 : http://trevorturk.wordpress.com/2008/12/11/easy-upload-via-url-with-paperclip/