在Rails中增加数据库值

时间:2013-03-22 01:16:48

标签: ruby-on-rails activerecord

在Rails中,我想通过递增来更新某些数据库值。 比如,我在表中有30个值,我想添加0.5。

以下是我试图完成它的方法:

Record.where(:status => "somestatus").first.value.to_f += 0.5

RoR抱怨说“未定义的方法`to_f ='”。 我知道我可以先获得价值,最后计算结果和update_attributes。但是最有效的方法是什么?

1 个答案:

答案 0 :(得分:6)

希望字段的类型为Float,以下内容将根据您的需要更新值。

object = Record.where(:status => "somestatus").first
object.increment!(:value, 0.5)

Check here有关增量!方法的文档。