如何从本地数据库的设计中删除所有用户

How can I delete all users from devise on local database

我需要从我的数据库中删除所有用户,以便我可以开始进行用户身份验证,我在测试时创建了多个帐户,但不记得他们的信息,所以如果有办法从终端执行此操作会是最好的选择

删除单个 table(使用回调)并让 ID 从 1 开始:

Model.destroy_all # Only necessary if you want to trigger callbacks.
ActiveRecord::Base.connection.execute("TRUNCATE #{table_name} RESTART IDENTITY")

如果您使用的是 Sqlite,它不支持截断,请执行以下操作:

Model.destroy_all # Only necessary if you want to trigger callbacks.
ActiveRecord::Base.connection.execute("Delete from #{table_name}")
ActiveRecord::Base.connection.execute("DELETE FROM SQLITE_SEQUENCE WHERE name='#{table_name}'")

如果您希望删除用户的数据库访问权限, 如果您使用的是 PostgreSQL,请尝试以下操作:

  SELECT * 
    FROM pg_user;

    DELETE FROM
    pg_user 
    WHERE condition;

您可以从 Rails 控制台执行此操作,您可以通过 运行ning:

启动
bin/rails c

然后,假设您的用户模型称为 User,您可以 运行:

User.destroy_all

这将删除所有现有的用户记录。如果不同,请将 User 替换为您的型号名称。

要退出控制台,只需键入 exit

希望对您有所帮助!

运行 rails 通过 rails c 控制台然后通过 User.delete_all

删除所有用户