我编写了一个执行以下操作的迁移:
Event.update_all 'tom_cancelled = false', 'tom_cancelled IS NULL'
Event.update_all 'jerry_cancelled = false', 'jerry_cancelled IS NULL'
可以(如果我可以的话,怎么做)我将它们结合起来干燥起来?我会用块吗?
答案 0 :(得分:2)
除非你想在ActiveRecord中使用循环,否则你不能这样做,但它没有意义,因为你最终会对结果集中的每条记录进行一次UPDATE
查询+ 1
以当前方式,无论结果集中有多少条记录,您只运行两个查询。
绝对没有必要抽象更多当前代码。特别是考虑到它在迁移过程中运行。