使用ruby控制台删除多个数据库条目

时间:2013-01-10 14:15:59

标签: ruby

我有一个使用rails系统填充的数据库。我想回去并从其中一个表中删除一个id列表。我目前正在使用以下命令删除单个条目。

Item.find(1).destroy

我希望能够使用一个命令删除一系列id。 (即1,6,5,8,12,14)

Item.find(1,6,5,8,12,14).destroy

我知道这不起作用,但这就是我想做的事情。我对ruby很新,只想确定最简单的方法。

3 个答案:

答案 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] )