我正在嘗試爲我正在製作的應用創建一個API,並且正在使用回形針創建上傳圖片到S3。從回形針獲取完整圖片url
所有在管理方面的事情都很好,但對於API我想盡可能有效地返回結果加入回形針圖片網址到每個測驗。
我有一個圖標模型(這顯然是使用回形針的地方)和一個測驗模型。測驗屬於圖標。
這裏是我的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
如何獲得完整的網址?它不存儲在我可以看到的圖標模型的任何字段中?
---編輯---
這裏是返回的記錄,一個看起來像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>
謝謝!
嘗試' @ quizzes.first.icon.picture_from_url'; 'picture_from_url'是回形針提供的輔助方法。 – bdares 2012-07-22 00:45:52
我可以看到,做@ quizzes.first.icon.image將正確和完整的url返回給圖像,但是我怎樣才能將這個注入到返回的每個測驗的結果中呢? – markstewie 2012-07-22 00:51:14
我不認爲你需要 - 助手方法只是從文件名和它所連接的模型的ID來計算它。 – bdares 2012-07-22 00:59:34