使NaN变为0%的数字到百分比异常处理程序

时间:2015-03-23 19:49:53

标签: ruby-on-rails

我有一行基本上计算转换率的代码。但是,如果是新广告系列,则转化率将显示为NaN%,而不是0.00%(我的精度为2)。

我尝试添加

rescue 0.00 
但最终没有成功。这是我的代码片段:

number_to_percentage((campaign.favorites.where(:owner_id => current_user.followers.map(&:follower_id)).count.to_f / campaign.favorites.where(favorited: true).count.to_f * 100), precision: 2) rescue 0.00

有关如何实现这一目标的任何线索?

1 个答案:

答案 0 :(得分:1)

fav = campaign.favorites.where(favorited: true)
val = fav.present? ? campaign.favorites.where(:owner_id => current_user.followers.map(&:follower_id)).count.to_f / fav.count.to_f) : 0.0

number_to_percentage(val)