0

我有一个应用程序正在做一件非常奇怪的事情。

我有 2 个具有has_many关联的模型:Group has_many :members. (AMember只能属于一个Group。)所以我尝试这样列出组的成员:

<ul>
  <%= for member in @group.members do %>
    <li class="entry">
      <%= link_to member.name, member_path(member) %>
    </li>
  <% end %>
</ul> 

很简单;这与我用来在组索引中列出所有组的逻辑相同,并且工作正常。但是,这是 HTML 输出:

<ul>

    <li class="entry">
      <a href="/members/23">John Doe</a>
    </li>

    <li class="entry">
      <a href="/members/25">Jane Doe</a>
    </li>
[#&lt;Member id: 23, name: &quot;John Doe&quot;, [timestamps], group_id: 3&gt;, #&lt;Member id: 25, name: &quot;Jane Doe&quot;, [timestamps], group_id: 3&gt;]</ul>

我勒个去?我的视图中没有inspectdebug调用任何地方,但它一直在循环之后附加整个查询。迭代器也是each如此。

值得注意的是,该Member模型还has_many :through与另一个模型Seminar, ( :through => :memberships) 有关联。我以相同的方式遍历关联,并且发生了同样的情况。

到底是怎么回事?

4

1 回答 1

1

更改ERB标签:

<% for member in @group.members do %>

不是:

<%= for member in @group.members do %>
于 2013-09-09T18:07:33.690 回答