4

在 Rails 中,我想通过递增来更新一些数据库值。比如说,我的表中有 30 的值,我想加上 0.5。

以下是我尝试完成的方法:

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

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

4

1 回答 1

7

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

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

在此处查看有关增量的文档!方法。

于 2013-03-22T12:29:54.170 回答