自分用メモ railsの計算でNaNやInfinityを回避する
自分用メモ
railsの計算でNaNやInfinityを回避する
一旦変数として入れるとうまくいく、一発で処理させようとするとエラー
下の内容は正規表現で数字かどうか判断している
profit_ratio = ((1 - (@total_costs.to_f / @total_price.to_f ) )* 100).round(2)
if profit_ratio.to_s =~ /^[+-]?[0-9]*[\.]?[0-9]+$/
else
profit_ratio = ""
end
htmlでは
<% kakeritu = ((price_detail.unit_price.to_f / price_detail.list_price.to_f )* 100).round(1) %>
<% if kakeritu.to_s =~ /^[+-]?(?:\d+.?\d|.\d+)$/ %>
<td class= "estimate_print_td2_12"> <%= kakeritu %>%</td>
<% else %>
<td class= "estimate_print_td2_12"> </td>
<% end %>