Django 2.2.4-在进行makemigrations后运行迁移时,“无适用迁移”

时间:2019-08-28 19:11:58

标签: python django makemigrations

我正在尝试在python 3.7中的django 2.2.4中进行迁移。 首先,我尝试进行makemigrations:

python3 manage.py makemigrations

我得到:

Migrations for 'main':
  main/migrations/0001_initial.py
    - Create model TutorialCategory
    - Create model TutorialSeries
    - Create model Tutorial

但是我尝试第二步:

python3 manage.py migrate

我得到:

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, main, sessions
Running migrations:
  No migrations to apply.

即使应该进行迁移。

我尝试删除自己的迁移文件夹,然后重新制作它(里面有空的__init__.py文件),但是它仍然无法正常工作。

(注意:我一直在学习本教程:使用外键链接模型-senddex的Django Web Development with Python p.9)

2 个答案:

答案 0 :(得分:2)

我在django 2.2中遇到了同样的问题,以下内容对我有用...

  1. 删除位于应用文件夹中的迁移文件夹
  2. 也删除pycache文件夹
  3. 重新启动服务器(如果您的服务器已打开并且您正在其他cli上工作)
  4. python manage.py makemigrations <app_name> zero
  5. python manage.py makemigrations <app_name> [明确的app_name很重要]
  6. python manage.py migrate

答案 1 :(得分:1)

以某种方式在数据库中虚拟或伪造您的迁移,截断 django_migrations 表应该可以工作。

  1. 删除所有迁移文件:

    查找。 -path“ / migrations / .py”-不是-name“ init .py”-删除 找 。 -path“ / migrations / .pyc”-删除

  2. 截断表格:

    截断django_migrations

  3. makemigrations,进行迁移。