问题描述
我能够使用以下步骤重置 Django PostgreSQL 数据库:
I was able to reset a Django PostgreSQL database using the following steps:
- 删除迁移文件
- 输入 psql 命令提示符.连接到数据库.删除模式公共级联;创建架构公共;
- 不幸的是,第 2 步似乎删除了我的用户角色和权限,因此我返回 psql 命令提示符并重新创建它们.
- 第 2 步还意味着我需要在 psql 命令提示符下运行以下命令:将架构公共使用授权给公共;授予对公共架构的创建权限;
- 第 2 步还删除了我创建的标准 Django 用户,因此我需要重新创建这些用户
- python manage.py makemigrations &&python manage.py migrate
我目前正在对我的模型进行更改并测试每个更改.我没有任何需要保留的数据.当迁移不起作用时,是否有比上述更简单的方法来重置数据库?
I am currently making changes to my models and testing each change. I don't have any data I need to keep. Is there an easier way than the above to reset the database when migrations donät work?
我至少想用其他东西替换第 2 步,这样我就可以跳过第 3-5 步.
I would at least like to replace step 2 with something else so that I can skip steps 3-5.
推荐答案
可能最简单的方法是重新创建整个数据库.在 Ubuntu 中,它看起来像这样:
Probably the easiest way to do this is to recreate the whole database. In Ubuntu, it looks like this:
sudo su postgres
psql
drop database your_database_name;
create database your_database_name with owner user_you_use_in_django;
\q
exit
就是这样.你有干净的数据库.为了做好准备,您必须使用 python manage.py migrate
运行迁移.
That's it. You have clean database. To make it ready to go, you have to run migrations with python manage.py migrate
.
如果您正在单独处理您的项目,您可以根据需要删除和重新创建迁移.
If you are working on your project alone, you can delete and recreate migrations, if you want.
这篇关于重置 Django PostgreSQL 数据库的简单方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!