Django 1.8,makemigrations没有检测到新添加的应用程序

9 python django

我有一个带有a,b,c应用程序的现有django项目.所有这些都包含在设置文件中的已安装应用程序中.他们有自己的模型,已经运行了迁移.现在,如果我添加一个新的应用程序,添加一个模型,将其包含在已安装的应用程序中,并尝试使用python manage.py makemigrations我收到no changes detected消息运行一个毯子makemigrations .这种行为不应该像是检测到新应用并为此运行初始迁移吗?我知道我可以手动使用,python manage.py makemigrations d但我想用using python manage.py makemigrations命令.有人可以提供这种行为的解释吗?

Hed*_*ide 20

如果手动创建新应用程序并将其添加到INSTALLED_APPS设置而不在其中添加迁移模块,则系统将不会选择更改,因为这不会被视为迁移配置应用程序.

startapp命令会自动在新应用程序中添加迁移模块.

startapp结构

foo/
    __init__.py
    admin.py
    models.py
    migrations/
        __init__.py
    tests.py
    views.py
Run Code Online (Sandbox Code Playgroud)

  • python manage.py makemigrations foo 将为该应用程序生成迁移目录 (2认同)