Rails 3 - 从HABTM关系中检索数据

时间:2011-05-27 17:52:27

标签: ruby-on-rails ruby-on-rails-3

我有以下表格 - 群组,联系人,contacts_groups(habtm联接表)

群组&联系人由用户拥有,并且都具有user_id列

问题:

当我在群组控制器中并且我想访问属于该群组的所有联系人时,我该怎么做?

url看起来像

http://localhost:3000/users/2/groups/5

我的观点看起来像这样

<p>
  <b>Name:</b>
  <%= @group.name %>
</p>

<p>Associated Contacts</p>


<% @contacts.each do |contact| %>
  <tr>
    <td><%= contact.firstname %></td>

<% end %>

在我的群组控制器中我有

  def show
    @contacts = Contact.accessible_by(current_ability)
  end

这将返回当前用户有权访问的所有联系人。如何退回属于我当前正在查看的群组的联系人?

谢谢!

1 个答案:

答案 0 :(得分:1)

我会试试这个:

@group.contacts

所以观点是:

<p>
  <b>Name:</b>
  <%= @group.name %>
</p>

<p>Associated Contacts</p>


<% @group.contacts.each do |contact| %>
  <tr>
    <td><%= contact.firstname %></td>

<% end %>