[英]Rails Active Record Association Query
我有以下模型,看起来像:
user.rb
has_many: groups
group.rb
has_many: channels
我想要一个查询,该查询返回所有属于用户的所有组的所有通道的“名称”字段的列表。
我下面的内容不起作用,任何指导表示赞赏。
Group.all.where("user_id = ?", 1).joins(:channels)
假设:
belongs_to
组 @user
我相信您应该能够做到:
Channel.where(group: @user.groups).pluck(:name)
哪个应该返回属于所有属于@user
所有Group
的所有Channel
的name
属性的array
(我认为这是list
意思)。
对于您的情况(在您对原始帖子的评论中指出,该帖子实际上应该是编辑内容),您应该执行以下操作:
<% @user_groups.each do |group| %>
<tr>
<td>
<%= group.name %>
</td>
<td>
<%= group.channels.pluck(:name) %>
</td>
</tr>
<% end %>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.