尝试使用rails控制台

时间:2015-08-14 13:58:44

标签: ruby-on-rails rails-console pry

所以我正在做一些事情并且不得不在我的数据库中转储多个测试虚拟记录。不幸的是,我一直很难搞清楚如何删除这些内容。

然后我打开了我的rails console ran

Players.count

..这给了我93名球员。我只有73'真实'玩家。我也注意到我给他们的球员名字是测试!!!

所以我在这里运行了这个命令

player = Players.where(name: "test!!!")

并收到了名为' test !!!'

的20名玩家的名单

然后我去运行这个命令

player.each(&:destroy)

起初输出看起来很不错,看起来好像都处理了。然而,在进一步向下滚动到最后我完全失望之后我遇到了这些输出

 (0.4ms)  ROLLBACK
 ActiveRecord::RecordNotDestroyed: ActiveRecord::RecordNotDestroyed

....看了之后,我重新跑了

Players.count

并且看到同样的93名球员仍在那里而感到失望。 :(

我会承认,对于铁轨上的红宝石而言,我是一个非常大三学生。所以我会承认,我很可能会错过这个,但任何人都可以看一下吗?

1 个答案:

答案 0 :(得分:0)

我猜你要删除名为test!!!的玩家。鉴于它是一个集合,你需要在播放器上运行destroy_all

player = Players.where(name: "test!!!")
player.destroy_all

要逐个删除,可能会有player.first.destroyplayer.last.destroy

或按其id查找并删除Players.find(1).destroy