0

我使用 Faker gem 为我的开发数据库填充了 20 个用户的虚拟数据。

我忘了包括“created_at”时间,所以它们现在都在我手工创建的详细用户记录之前排序。我想:

1) 删除 20 个虚拟用户,并用旧的“created_at”时间重新填充它们,或者

2) 用旧的时间更新 20 个虚拟用户的“created_at”属性。

如果有办法撤销我的初始人口抽查,选项 1 就足够简单了。有没有办法做到这一点?

谢谢!

4

1 回答 1

1

在 Rails 中,除了 rake 任务之外,没有其他选项可以删除数据库中的数据。

在这种情况下,我认为选项 1更好,因为不需要付出太多努力。由于 created_at 在创建记录时会自动更新,因此您无需这样做。您只需要从用户表中删除数据。

只需在终端的项目文件夹中输入 rails db并输入以下命令

delete from users where id in ( select id from users order desc LIMIT 20)

它将删除最后 20 个用户。

创建一个新的迁移以将created_at 列添加到表中。

运行rake 任务

一切都会完美!

谢谢

于 2012-09-20T19:41:33.537 回答