0

我正在尝试通过这种方法根据 ROR 中的某些字段获取记录

@indivisuals = Profile.find_by_manager_id(current_user.account.id)  

但是当我尝试迭代它时,它会显示一些错误。

undefined method each' for undefined method each' for #<Profile:0x8383680>

相关代码:

<% if @indivisuals %>
  <% @indivisuals.each do |profile| %>
  <li><a href="accounts/show/<%=h profile.account_id %>" style="padding-left:10px;"><%=h profile.full_name %></a>&nbsp;<a href="accounts/edit/<%=h profile.account_id %>" style="padding-left:10px;">Edit</a>&nbsp;&nbsp;<a href="#" style="padding-left:10px;">Delete</a></li>
<% end %>

请让我知道我做错了什么。

4

2 回答 2

3

那是因为你得到的是一个具体的对象,而不是一个要迭代的关系。相反,您需要更改您的取景器,例如:

@indivisuals = Profile.where(:manager_id => current_user.account.id)
于 2012-04-19T20:29:45.133 回答
0

使用find_all_by_manager_id而不是find_by_manager_id

@indivisuals = Profile.find_all_by_manager_id(current_user.account.id)  
于 2012-08-11T12:24:56.383 回答