我有listing model
。每个商家信息都包含many
张图片。因此,在我的index
页面中,我想显示所有商家信息以及每个商家信息的第一张图片。因此,在控制器中,我首先获取包含:name
,:
描述,etc
等所有字段的所有商家信息。现在对于图像部分是卡住的地方。如何使用custom_url
代码在每个房间中使用image url
正确添加:ruby
字段?
(注意:我在前端使用角度,所以这只适用于json和 不希望在数据库中为第一个图像添加单独的字段)
所以这是控制器代码
def search
@listings = Listing.all
custom_url = listing.photos[0].image_url(:medium)
respond_to do |format|
format.html
format.json { render json: {listings: @listings} }
end
end
答案 0 :(得分:2)
在Listing模型中添加一个获取图片网址的方法并将其命名为custom_url
<强> Listing.rb 强>
def custom_url
photos.first.image_url(:medium)
end
然后在render_json
中添加方法custom_url
:
def search
@listings = Listing.all
listings_json = @listings.as_json({methods: :custom_url}
respond_to do |format|
format.json { render json: {listings: listings_json }
end
end