作成しているアプリのAPIを作成しようとしていますが、ペーパークリップジェムを使用して画像をS3にアップロードしています。
管理者側ではすべてうまくいきましたが、APIの場合は、ペーパークリップの画像のURLを各クイズに結合してできるだけ効率的に結果を返したいと思います。
アイコンモデル(これは明らかにペーパークリップが使用されている場所です)とクイズモデルがあります。クイズはアイコンに属します。
公開されているすべてのクイズを返すAPIメソッドは次のとおりです
def quizzes
@quizzes = Quiz.published.joins('INNER JOIN icons ON icons.id = quizzes.icon_id').select('icons.image_file_name, quizzes.updated_at, quizzes.description, quizzes.id, quizzes.title')
respond_to do |format|
format.json { render :json => @quizzes }
format.xml { render :xml => @quizzes }
end
end
これは私に画像名を与えるだけで、画像への完全なURLは与えません。のlove.png
代わりにhttp://s3.amazonaws.com/myapp-dev/icons/images/000/000/001/original/love.png?1342586714
完全なURLを取得するにはどうすればよいですか?私が見ることができるアイコンモデルのどのフィールドにも保存されていませんか?
- - 編集 - -
返されたレコードの1つがxmlでどのように表示されるかを次に示します。
<quiz>
<description>Voluptatem inventore voluptatibus provident et officia. Consequatur voluptate alias. Laboriosam sit et. Non ea aut doloremque odit officiis. Unde mollitia asperiores omnis eaque at.</description>
<id type="integer">5</id>
<image-file-name type="NilClass">love.png</image-file-name>
<title>Corrupti ea qui veniam et praesentium.</title>
<updated-at type="datetime">2012-07-21T23:26:48Z</updated-at>
</quiz>
ありがとう!