汇总每个do循环中的所有记录?

时间:2020-02-13 03:13:52

标签: ruby-on-rails ruby database

让我说我撤退了。这次撤退有2个不同的团队参与该撤退。

团队a有3个用户

团队b有1个用户

在下面的代码块中,我将看到显示两个不同行的输出。一行的数字为3,另一行的数字为1。

<% @retreat.teams.each do |team| %>
  <p>Attending: <%= link_to(team.name, team_path(team.id)) %></p>
  <%= team.users.distinct.count :user_id %>
<% end %>

如何合并所有记录,使输出为4?还是撤退计划中每个团队的所有唯一用户的总和?

1 个答案:

答案 0 :(得分:1)

型号:

# app/models/retreat.rb

has_many :users, through: :teams

查看:

# app/views/retreat/show.html.erb

<%= @retreat.users.distinct.count %>