如何更新基于选定ID的多个记录列的值

时间:2019-02-25 10:49:50

标签: ruby-on-rails

在产品表中,我有类似字段

id   product_name   product_value   quantity    status
1     abc             10000           50        received
2     efg             5000            15        shipment
3     hij             850             100       received
4     klm             7000            20        shipment
5     nop             350             50        received

我可以一次选择多行,在这里我选择id = 2,4并需要更改status ='received'。如何一次在Rails中进行多次更新

2 个答案:

答案 0 :(得分:2)

尝试

Product.where(id: [2, 4]).update_all(status: 'received')

答案 1 :(得分:0)

如果要查找状态为'shipment'的所有产品,则可以使用:

Product.where(status: 'shipment')

从这里,您可以将所有设置都设为'received',或遍历它们并仅选择要更改的内容。