我有一个使用rails系统填充的数据库。我想回去并从其中一个表中删除一个id列表。我目前正在使用以下命令删除单个条目。
Item.find(1).destroy
我希望能够使用一个命令删除一系列id。 (即1,6,5,8,12,14)
Item.find(1,6,5,8,12,14).destroy
我知道这不起作用,但这就是我想做的事情。我对ruby很新,只想确定最简单的方法。
答案 0 :(得分:3)
当Rails可以为您完成时,无需手动获取项目:
Item.destroy_all(id: [1, 6, 5, 8, 12, 14])
或者,正如@ShankyMunjal发布的那样,如果你只使用ids,你可以选择:
Item.destroy([1, 6, 5, 8, 12, 14])
答案 1 :(得分:1)
这应该有效:
[1,6,5,8,12,14].each {|iid| Item.find(iid).destroy }
答案 2 :(得分:1)
Item.destroy( [1,6,5,8,12,14] )