重新开始 django 迁移

Start over with django migrations

我有 2 个相关问题。

  1. 我已经从项目中的所有应用程序中删除了所有迁移,包括迁移目录。我从一个干净的数据库开始。但是,当我 运行 ./manage.py makemigrations 时,django 说没有要进行的更改。我如何完全重新开始迁移?没有压扁,只是重新开始。

  2. 好像我调用makemigrations的时候,django查询的是数据库。我希望我的代码库成为我迁移的唯一真实来源。有办法吗?

  1. 如果应用程序没有包含 __init__.py 文件的 migrations/ 目录(即使在 Python 3 上),Django 将不会创建任何迁移如果您不指定应用程序名称。您要么必须创建目录和 __init__.py 文件,要么必须为每个应用程序调用 ./manage.py makemigrations <app_name>,这会强制 Django 创建目录。

  2. 没有。它可能会在 makemigrations 命令期间连接到数据库,但迁移完全基于您的模型。