我有一个使用rails系统填充的数据库。我正在尝试返回并从其中一个表中删除一个id列表。我正在使用以下命令删除单个条目。使用ruby控制台删除多个数据库条目
Item.find(1).destroy
我希望能够用一个命令删除一系列ID。 (即1,6,5,8,12,14)
Item.find(1,6,5,8,12,14).destroy
我知道这不工作,但多数民众赞成在想什么,我做的想法。我对ruby相当陌生,只是试图确定最简单的方法。
我有一个使用rails系统填充的数据库。我正在尝试返回并从其中一个表中删除一个id列表。我正在使用以下命令删除单个条目。使用ruby控制台删除多个数据库条目
Item.find(1).destroy
我希望能够用一个命令删除一系列ID。 (即1,6,5,8,12,14)
Item.find(1,6,5,8,12,14).destroy
我知道这不工作,但多数民众赞成在想什么,我做的想法。我对ruby相当陌生,只是试图确定最简单的方法。
无需手动获取项目时,Rails可以为你做到这一点:
Item.destroy_all(id: [1, 6, 5, 8, 12, 14])
,或者如@ShankyMunjal贴,如果你可以只使用IDS ,你可以去:
Item.destroy([1, 6, 5, 8, 12, 14])
啊是的,的确有这样的方法。 –
Item.destroy([1,6,5,8,12,14])
你只是需要DELET e记录(在这种情况下,delete_all将是最好的),或销毁依赖关联并调用回调(destroy_all)? –
这是我放入数据库控制台的时间之一,并发出'从(1,6,5,8,12,14);'中的id删除项目。了解ActiveRecord在幕后做些什么以及如何执行基本的DBA任务很重要,也很好。 –