我有两个模型,帖子和评论,我试图显示最后5个评论标题。
<%= Post.limit(5).order('created_at desc') %>
给了我最后5篇帖子。
我如何获得最后5条评论和标题?
答案 0 :(得分:1)
我认为你在寻找:
Comment.select(:title).order('created_at desc').limit(5).map {|c| c.title}
这将为您创建最后5条评论的标题数组。如果您需要其他属性,请将它们添加到名为(Comment.select([:title, :owner])
)的select方法中,或者删除select和fetch所有注释属性。
答案 1 :(得分:1)
要获得最近5条评论,您可以使用此
Comment.limit(5).order('created_at desc').select(:title)
显示帖子的标题,看起来您想要检索帖子的最后5条评论。
你可以这样:
<% Post.limit(5).order('created_at desc').each do |post| %>
<% post.comments.select(:title).order('created_at desc').limit(5).each do |comment| %>
<%= comment.title %>
<% end %>
<% end %>
有两个问题:
注意:我无法测试这些,但我想它们会起作用,或者至少会给你一些想法。