psycopg2.errors.UndefinedTable:关系 "libman_classbooks" 不存在
psycopg2.errors.UndefinedTable: relation "libman_classbooks" does not exist
我错误地删除了项目中所有应用程序的迁移文件夹。因此,我不得不为每个应用重做 makemigrations
和 migrate
。当我尝试访问具有关系路径的特定区域时,出现错误。
relation "libman_classbooks" does not exist
当我尝试对模型进行一些更改时,保存并尝试 运行 makemigrations
和 migrate
。这并不顺利,但 returns.
django.db.utils.ProgrammingError: relation "libman_classbooks" does not exist.
我被迫猜测我需要在数据库中手动创建表。使用创建表。我不知道这是否是最好的选择。
所以 我认为 我的选择可能在开发中通过 pgAdmin, 但是在生产中呢?如果 CREATETABLE 是最佳选择,我将如何为生产数据库执行此操作??。我的数据库中已有不需要干扰的数据。
如果您遇到此类问题
回答-
- 要解决此问题,您必须在已安装的应用程序部分 setting.py 中注释
'django.contrib.admin'
这一行,然后 运行 命令 docker exec -it <db-container name or ID> psql -U postgres
并检查您的数据库是存在与否如果存在则删除数据库并创建具有相同名称的新数据库。
- 再次创建数据库后 运行 docker-compose up 现在它可以工作并再次取消注释在 settings.py
中注释的行
- 另一种方法如果它不起作用,请在已安装的应用程序部分 settings.py 中添加此行
'app.apps.AppConfig'
然后 运行 docker- 组合它将适用于你.
我错误地删除了项目中所有应用程序的迁移文件夹。因此,我不得不为每个应用重做 makemigrations
和 migrate
。当我尝试访问具有关系路径的特定区域时,出现错误。
relation "libman_classbooks" does not exist
当我尝试对模型进行一些更改时,保存并尝试 运行 makemigrations
和 migrate
。这并不顺利,但 returns.
django.db.utils.ProgrammingError: relation "libman_classbooks" does not exist.
我被迫猜测我需要在数据库中手动创建表。使用创建表。我不知道这是否是最好的选择。 所以 我认为 我的选择可能在开发中通过 pgAdmin, 但是在生产中呢?如果 CREATETABLE 是最佳选择,我将如何为生产数据库执行此操作??。我的数据库中已有不需要干扰的数据。
如果您遇到此类问题
回答-
- 要解决此问题,您必须在已安装的应用程序部分 setting.py 中注释
'django.contrib.admin'
这一行,然后 运行 命令docker exec -it <db-container name or ID> psql -U postgres
并检查您的数据库是存在与否如果存在则删除数据库并创建具有相同名称的新数据库。 - 再次创建数据库后 运行 docker-compose up 现在它可以工作并再次取消注释在 settings.py 中注释的行
- 另一种方法如果它不起作用,请在已安装的应用程序部分 settings.py 中添加此行
'app.apps.AppConfig'
然后 运行 docker- 组合它将适用于你.