如果我正在爲這個問題扭曲幹坤,請道歉。但是,我有以下的代碼,並希望有它的總和,而不是兩個獨立的數字:如何總結計數列表
<% @all_users.each do |i| %>
<%= i.liked_recipes.count %>
<% end %>
此代碼的輸出如下:
12 4
我想輸出到是將總和:
16
如果我正在爲這個問題扭曲幹坤,請道歉。但是,我有以下的代碼,並希望有它的總和,而不是兩個獨立的數字:如何總結計數列表
<% @all_users.each do |i| %>
<%= i.liked_recipes.count %>
<% end %>
此代碼的輸出如下:
12 4
我想輸出到是將總和:
16
另外:
<%= @all_users.sum { |u| u.liked_recipes.count } %>
你需要一些方法來跟蹤計數:
<% total = 0 %>
<% @all_users.each do |i| %>
<% total += i.liked_recipes.count %>
<% end %>
<%= total %>
太棒了!這很好,謝謝你:) – MikeHolford
這樣做的一個較短的方式是使用inject
@all_users.inject(0) { |result, i| result + i.liked_recipes.count }
如果@all_users
沒有加載除了這些配方計數那麼它可能是最好讓數據庫做計數:
LikedRecipe.where(:user_id => @all_users.select(:id)).count
非常好,謝謝! – MikeHolford