增加rails中具有固定值的所有记录

时间:2014-08-19 13:42:45

标签: mysql ruby-on-rails

我想这样做

User.all.each do |user|
    user.salary = user.salary + 100
    user.save
end

我试过这个User.update_all(salary: "salary + 100"),但它引发了异常Mysql::Error: Incorrect integer value: 'salary + 100' for column 'salary' at row 1:

增加rails中所有记录的最佳方法是什么?

2 个答案:

答案 0 :(得分:4)

使用此代码:

User.update_all("salary = salary + 100")

答案 1 :(得分:2)

你可以这样做:

User.update_all('salary = salary + 100')