我有这样的事情:
good_attrs = %w(firm_size priority_level)
good_attrs.each do |attr|
if (score.send(attr) > max.send(attr))
max.send("#{attr}=", score.send(attr))
end
end
但是,发生的情况是,有时它可能会遇到Max
如下所示的记录:
#<Max:0x007fe01024b240> {
:id => 2,
:user_id => 1,
:firm_size => 101.0,
:priority_level => nil,
:created_at => Fri, 23 Nov 2012 01:55:53 UTC +00:00,
:updated_at => Fri, 23 Nov 2012 01:58:16 UTC +00:00
}
即max.priority_level
= nil
。
那么如何修改我的初始值if statement
以处理nil
评估双方的案例?即如果一个score
或max
属性为零。理想情况下,我希望它被视为0
并相应地进行。