我有以下两种模式:
photoalbums
has_many:photos
photos
belongs_to:photoalbums
当我显示所有photoalbums的列表时,我还要说明相册中有多少张照片:
控制器:
def index
@photoalbums = PhotoAlbum.all
end
查看:
<%# Get the number of photos per this album %>
<% @photos = Photo.find_by_photo_album_id(photoalbum.id) %>
<li><%= @photos.count %> Photos</li>
以上内容不允许我在视图中执行@photos.count
或@photos.record
。
在控制器中有更好的方法吗?我在控制器中想过可能是include(:photos)
?
感谢!!!
答案 0 :(得分:2)
解决方案1)在您的视图中,您需要写下这个..
<% @photos = Photo.find_all_by_photo_album_id(photoalbum.id) %>
<li><%= @photos.count %> Photos</li>
而不是find_by_photo_album_id find_all_by_photo_album_id。
解决方案2)
In controller
def index
@photoalbums = PhotoAlbum.find(:all,:include => :photos)
end
In View
<% @photos = photoalbum.photos %>
<li><%= @photos.count %> Photos</li>