python manage.py makemigrations 提示未检测到更改?

3

我刚从Github上克隆了一个现有的项目,并将mysql数据库转储到了本地机器。一切都工作正常。我在myapp/model.py中进行了一些更改,例如添加新表格。之后运行
1. python ./manage.py makemigrations myapp。然后它会生成迁移文件。

Migrations for 'myapp':
  0001_initial.py:
    - Create model AndroidRegkey
    - Create model ApkVersion
     ....................... 
     .......................
  1. python manage.py migrate myapp it gives following message

    Operations to perform:
      Apply all migrations: myapp
    Running migrations:
      No migrations to apply.
    
这是我在本地机器上首次迁移。已经有了数据库。但是在model.py中添加新模型后,第一次它不对数据库应用任何迁移,为什么? 我还查看了stack-over flow,但没有起作用。
当我运行python manage.py migrate --list时,得到以下结果。
admin
 [X] 0001_initial
auth
 [X] 0001_initial
contenttypes
 [X] 0001_initial
intracity
 (no migrations)
mailer
 [X] 0001_initial
 [X] 0002_auto_20150720_1433
sessions
 [X] 0001_initial

运行 python manage.py migrations --list 命令以查看您的迁移状态。 - rix
当我运行 python manage.py migrations --list 时,出现了 Unknown command: 'migrations' Type 'manage.py help' for usage. 的错误提示。 - geeks
抱歉,python manage.py migrate --list - rix
@rix,请查看更新后的问题。 - geeks
因此,您可以看到已应用您的迁移。这就是为什么会出现“没有可应用的迁移”消息。 - rix
1个回答

2
当您应用迁移时,已应用的迁移将存储在数据库中。它们还将导出到您的数据库转储中。因此,在本地导入数据后,您的数据库应该已经处于正确的状态。Django查看相关表格,发现您已经是最新状态,因此不会采取进一步操作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接