2013-02-02 137 views
0

我正在使用回形针将多张图片上传到模型,我有一个帖子模型has_many照片。仅显示单张图片中的一张图片

当我在视图中显示这些图像并且有多个图像分配到该帖子时,帖子会乘以照片的数量,所以如果有三张图像,我会得到三个相同的帖子。我知道这是为什么发生,因为我通过循环记录,像这样

<ul> 
<% @tynewyddpost.each do |t| %> 
<li> 
<% t.photos.each do |p| %> 
<a class="photo" href="#"><%= image_tag p.avatar.url(:thumbnail_news_images) %></a> 
<p><a href=""><%= t.title %></a></p> 
<p class="date"><%= t.created_at %></p> 
</li> 
<% end %> 
<% end %> 
</ul> 

如何我声明,我只想要一个显示,如果有不止一个,这方法我需要看?

感谢

回答

1

好了,所以找到了答案

<ul> 
<% @tynewyddpost.each do |t| %> 
<li> 
<% single = t.photos.first %>#Added this above call for image 
<a class="photo" href="#"><%= image_tag(single.avatar.url(:thumbnail_news_images)) %></a>#call first image like this 
<p><a href=""><%= t.title %></a></p> 
<p class="date"><%= t.created_at %></p> 
</li> 
<% end %> 
</ul> 
+0

有第一个,最后,和大量的其他选项。如果第一个是不合理的解决办法,让我知道。 – jahrichie

+0

关于所有可用方法的任何文档?将有助于通读,谢谢 – Richlewis

+0

您可以在 - [Finder方法](http://api.rubyonrails.org/classes/ActiveRecord/FinderMethods.html) – 2013-02-02 10:14:12

相关问题