python manage.py makemigrations会显示"No changes detected"的信息。

8 浏览
0 Comments

python manage.py makemigrations会显示"No changes detected"的信息。

我刚刚从GitHub上克隆了一个现有项目,并在我的本地机器上导入了MySQL数据库。一切都正常运行。我在myapp/model.py中进行了一些更改,比如添加了新的表。之后运行以下命令:
\n1. python ./manage.py makemigrations myapp。然后它会生成迁移文件,如下所示:\n

Migrations for 'myapp':
  0001_initial.py:
    - 创建模型 AndroidRegkey
    - 创建模型 ApkVersion
     ....................... 
     .......................

\n2. python manage.py migrate myapp,它会给出以下消息:\n

要执行的操作:
  应用所有迁移:myapp
正在运行迁移:
  没有要应用的迁移。

\n这是在我的本地机器上第一次迁移。我已经有了数据库。但是在model.py中添加新模型后,为什么第一次迁移没有应用到数据库呢?\n我还查看了这个链接stack-over flow,但没有起作用。\n当我运行python manage.py migrate --list时,得到以下结果。\n

admin
 [X] 0001_initial
auth
 [X] 0001_initial
contenttypes
 [X] 0001_initial
intracity
 (没有迁移)
mailer
 [X] 0001_initial
 [X] 0002_auto_20150720_1433
sessions
 [X] 0001_initial

0
0 Comments

python manage.py makemigrations 命令执行时出现 No changes detected 错误的原因是数据库已经处于最新状态,不需要进行迁移操作。解决方法是确保数据库中的表结构和当前项目的模型定义保持一致,如果需要修改模型,可以使用 python manage.py makemigrations 命令生成新的迁移文件。

0