我在mongodb中的样本集中有记录,如
{
"name": "x",
"value": 2
},
{
"name": "y",
"value": 3
},
{
"name": "z",
"value": 4
}
我想通过减1来更新所有记录的值字段。我做的是
samples = Sample.all
samples.each do |sample|
sample.update_attributes({value: sample.value - 1})
end
我觉得这不是一个很好的方法。 有没有其他方法可以这样做?
我正在使用mongoid 4.0和rails 4.1.4
答案 0 :(得分:2)
你可以尝试:
samples = Sample.all
samples.each do |sample|
sample.inc("value" => -1)
end