Rails批量更新

时间:2011-11-15 10:48:34

标签: ruby-on-rails

我在控制台中,我有一个名为line的模型,其中包含fontsize字段。

我想规范化我的字体大小,使20-25之间的字体设置为24,任何上面的字体设置为28,30s中的任何字体都设置为32。

如何从控制台批量更新数据库?

1 个答案:

答案 0 :(得分:2)

(我读这篇文章只是你想做的一次,所以我为了表现或简洁的可读性而去了)

假设Rails> 3并且您的模型名为Line(大写字母为“L”),以下内容应该是:

Line.where(:fontsize => (20..25).each {|x| x.update_attribute :fontsize, 24)
Line.where(:fontsize => (26..29).each {|x| x.update_attribute :fontsize, 28)
Line.where(:fontsize => (30..39).each {|x| x.update_attribute :fontsize, 32)