[英]Ruby Rails total value of loop each
I have a loop like this listing all count numbers like 2,44,11 etc., how do I calculate total number? 我有一个像这样的循环,列出了所有计数数字,例如2,44,11等,如何计算总数?
<% @book.each do |book| %>
<div><%= book.count %></div>
<% end %>
Thanks! 谢谢!
您可以使用inject
来累加count
并获得所有书籍的总数:
@book.inject(0) { |total, book| total + book.count }
You can use @books.sum
, and pass it a proc which is invoked for each record, returning the number you want to add to the sum. 您可以使用
@books.sum
,并将为每个记录调用的proc传递给它,并向您的总数返回要添加的数字。 Using Proc#to_sym
gives you a very succinct syntax: 使用
Proc#to_sym
使您的语法非常简洁:
@books.sum(&:count)
<% @book.each do |book| %>
<div><%= book.count %></div>
<% end %>
Total books: <%= @books.sum(&:count) %>
@book.collect(&:count).sum
试试看@books.sum(:count)
这将返回您的总和
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.