我有一个应用程序正在做一件非常奇怪的事情。
我有 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>
[#<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
) 有关联。我以相同的方式遍历关联,并且发生了同样的情况。
到底是怎么回事?