PaperClipを使用してURL経由で画像を取得できますか?フレックスイメージでは可能ですが、fleximageはRails3をサポートしていないので、私はペーパークリップに切り替えました。ペーパークリップURLを使って直接画像を取得する
現在、イメージをカールで取り出してhddに保存し、クリップのimage_fileで読み込みます。
私はGoogle経由で実際のソリューションを見つけていないので、うまくいけば私を助けることができます。
PaperClipを使用してURL経由で画像を取得できますか?フレックスイメージでは可能ですが、fleximageはRails3をサポートしていないので、私はペーパークリップに切り替えました。ペーパークリップURLを使って直接画像を取得する
現在、イメージをカールで取り出してhddに保存し、クリップのimage_fileで読み込みます。
私はGoogle経由で実際のソリューションを見つけていないので、うまくいけば私を助けることができます。
<modelname>.<attachmentname>.url
メソッドは、あなたが探している方法ではありませんか?言い換えれば
、あなたのモデルがFoo
呼び出された場合、あなたはhas_attached_file :bar
に設定し、その後foo.bar.url
あなたはimage_tag
またはlink_to
または何でもしたいに入れることができ、あなたの画像のURLを与える必要があります。
あなたが探しているものでない場合は、あなたが意味するものを明確にすることができますか?
はい、これは可能ですごく簡単です。お使いのモデルで
:
#we use this to get the image.
require 'rest-open-uri'
Class Model << ActiveRecord::Base
has_attached_file :picture
#Get the picture from a given url.
def picture_from_url(url)
self.picture = open(url)
end
そして、あなたはこのような何か行うことができます。
#controller
@model.picture_from_url(<Your URL here>)
をそして、我々は、オブジェクトの残りの部分で画像を保存しているため。あなたはあなたのビューでこれを使うことができます:
<%= image_tag @model.picture.url %>
これは役に立ちます。
しかし、独自のサーバー上に独立したファイルを持つために、指定されたURLから画像をダウンロードすることは可能ですか? – mrmnmly
これにより、独自のサーバー上に独立したファイルが作成されます。マルチパート形式との唯一の違いは、データストリームが別のソース(この場合はurl)から来ていることです。 Paperclipのポストプロセッサーは画像を取り込んでサイズ変更して保存します –
「フェッチ」は「アップロード」を意味しています。あなたが「アップロード」を意味し、「ダウンロード」を意味しないことを明確にするならば、質問ははるかに明確になります。いくつかの答えはあなたがダウンロードする方法を尋ねていると仮定しています。 –