ペーパークリップを使用して AWS-S3 バケットに写真をアップロードしています。Mechanize を使用して別のフィードから写真にアクセスしています。最近 gem ファイルを更新しましたが、ペーパークリップには aws-s3 gem ではなく aws-sdk gem が必要なようです。現在、aws-sdk gem に対応するコードをデバッグしていますが、ファイルのアップロードで行き詰まっています。aws-s3 gem を使用した以下の作業コード:
image = agent.get(url).body
filename = "#{listing_id}:#{i}.jpg"
AWS::S3::S3Object.store(filename, image, S3_BUCKET_NAME)
"https://s3.amazonaws.com/#{S3_BUCKET_NAME}/#{filename}"
次のエラーが表示されます: undefined method
store' for AWS::S3::S3Object:Class`
私が収集できるものから、新しいコードは次のようになります。
key = File.basename(filename)
s3.buckets[S3_BUCKET_NAME].objects[key].write(:file => filename)
aws-s3を利用してstoreメソッドで画像を参照しました。aws-sdk を使用してイメージを参照するにはどうすればよいですか?
今のところ、古いペーパークリップ バージョンに戻って aws-s3 を再インストールしますが、可能であればコードを最新の状態に保ちたいと考えています。どんな考えでも大歓迎です。