我可以做这样的事情吗?
Item.where(id: [2, 5, 8]).update_column(calendar_id: 5)
显然这会出错,但是有没有类似的方法?
我只是不希望触发回调或更改时间戳。调用循环似乎是一种黑客行为。
我可以做这样的事情吗?
Item.where(id: [2, 5, 8]).update_column(calendar_id: 5)
显然这会出错,但是有没有类似的方法?
我只是不希望触发回调或更改时间戳。调用循环似乎是一种黑客行为。
在 ActiveRecord 中禁用时间戳后,您需要update_attribute
在每个上运行。有关如何禁用时间戳的信息,Item
请参阅此 SO 答案。
使用update_all:
Item.where(id: [2, 5, 8]).update_all(calendar_id: 5)