计算rails

时间:2017-05-04 08:14:07

标签: ruby-on-rails ruby-on-rails-4 activerecord

基本上我有3种不同的模型

class Zone < ApplicationRecord
  has_many :providers
end

class Provider < ApplicationRecord
  has_many :referrals 
  belongs_to :zone
end

class Referrals < ApplicationRecord
  belongs_to :provider
end

推介属于属于区域的提供商。现在我遇到的问题是计算一个区域的推荐数量?

这是我试过的erb标签

    <% @zones.each do |z| %>
      <li style="color: green">
        <%= link_to z.name, z %>
        <% z.providers.each do |p| %>
          <%= p.referrals.count %> 
        <% end %>
      </li>
    <% end %>

但这会计算每个提供商的推荐并显示它。我希望它只显示总数吗?

1 个答案:

答案 0 :(得分:2)

class Zone < ApplicationRecord
  has_many :providers
  has_many :referrals, through: :providers
end

这会让你做...

z.referrals.count