我有一个非常奇怪的应用程序。
我有2个模型与has_many
关联:Group
has_many :members
。 (Member
只能属于一个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>
[#<Member id: 23, name: "John Doe", [timestamps], group_id: 3>, #<Member id: 25, name: "Jane Doe", [timestamps], group_id: 3>]</ul>
到底是什么?我在视图中的任何位置都没有inspect
或debug
调用,但它会在循环后继续附加整个查询。 each
迭代器也是如此。
值得注意的是,Member
模型与另一个模型has_many :through
,(Seminar
)之间也存在:through => :memberships
关联。我以相同的方式遍历关联,同样的事情发生。
发生了什么事?
答案 0 :(得分:1)
更改ERB
代码:
<% for member in @group.members do %>
不
<%= for member in @group.members do %>