ruby-on-rails – 迭代活动记录结果 – ruby​​ on rails

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 迭代活动记录结果 – ruby​​ on rails前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在努力找到这个答案,也许这太简单了……

在rails中,迭代activerecord结果的最佳方法是如何拉出你想要的特定字段?

我有一个评论控制器(命名帖子),可以提取所有记录:

def index
@posts = Post.find(:all)
end

然后在索引视图中,当我使用<%= @posts%>我得到了所有数据……这很棒……

#<Post id: 1,user_id: "9",picture: nil,comments: "here's a first comment",title: nil,twitter: nl,frame: nil,created_at: "2012-05-09 04:21:16",updated_at: "2012-05-09 04:21:16"> #<Post id: 2,comments: "here's a second comment",twitter: "please",created_at: "2012-05-09 05:20:03",updated_at: "2012-05-09 05:20:03">

我现在如何迭代测试,以便视图显示来自comments和created_at字段的数据:

这是第一条评论,2012-05-09 04:21:16

这是第二条评论,2012-05-09 05:20:03

我尝试了以下内容并收到错误消息.

<% @posts.each do |c| %>
   <%= c.posts.comments %>
   <%= c.posts.created_at %>
<% end %>

解决方法

@ posts.each中的“c”执行| c |表示@posts集合中的特定post对象.

所以,从某种意义上说,你正试图做<%= post.posts.comments%>.

以下是代码的外观:

<% @posts.each do |p| %>
   <%= p.comments %>
   <%= p.created_at %>
<% end %>

猜你在找的Ruby相关文章