2

我有一系列发票。其中一个属性是 exchange_rate(用于从美元计算墨西哥比索的货币)。如果即使其中一条记录没有设置 exchange_rate,我也需要创建一个警告。

我可以像这样检查集合中记录的 exchange_rate 是否为空白...

<% is_blank = false %>

<% @invoices.each do |invoice| %>
  <% if invoice.exchange_rate.blank? %>
    <% is_blank = true %>
  <% end %>
<% end %>

<% if is_blank %>
  shoot warning: all of the invoices must have an exchange rate in order
  to calculate pesos total
<% end %>

写上述内容的更 Railsy 方式是什么?

4

1 回答 1

7

就像这样,使用Enumerable#any?方法:

<% if @invoices.any? { |i| i.exchange_rate.blank? } %>
  shoot warning: all of the invoices must have an exchange rate in order
  to calculate pesos total
<% end %>
于 2012-05-21T22:23:10.053 回答