2014-11-22 71 views
1

我有以下代码:遍历Rails中的Active Record的关系3.2

@items = QuestionGroup.search(params[:search]).limit(50) 

这会返回一个ActiveRecord关系。在我要来遍历它的观点,所以我使用:

<% if @items.present? %> 
    <%= @items.each do |r| %> 
     <%= div_for r do %> 
      <div><%= r.subject %></div> 
     <% end %> 
    <% end %> 
<% end %> 

这确实打印r.subject的看法,但然后将其与整个关系遵循它。例如

the pipe 
[#<QuestionGroup id: **, subject: "the pipe", created_at: "*******", updated_at: "******"] 

这是为什么,我该如何解决?

+0

'<%= @ items.each do | r | %>'到'<%@ items.each do | r | %>' – Nithin 2014-11-22 11:19:46

回答

1

问题是在这里:

<%= @items.each do |r| %> 

这行代码遍历每个关系,并因“=”你输出的内容。将其更改为:

<% @items.each do |r| %> 

和你很好去!

+0

谢谢菲尔。我会学会在erb这些日子里小心:)。 – Finnjon 2014-11-22 11:25:01

+0

不客气:)我一开始就遇到这个错误,这是你学习的方式;) – 2014-11-22 12:00:04