Django 2.2.4 - 运行 在 makemigrations 之后迁移时“没有要应用的迁移”
Django 2.2.4 - “No migrations to apply” when run migrate after makemigrations
我正在尝试在 python 3.7 中的 django 2.2.4 中进行迁移。
首先,我尝试 make do makemigations:
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
文件),但它仍然不起作用。
(注意:我一直在关注教程:Linking models with Foreign Keys - Django Web Development with Python p.9 by senddex)
您的迁移以某种方式虚拟或伪造地应用到数据库中,截断 django_migrations table 应该有效。
删除所有迁移文件:
找到。 -path "/migrations/.py" -not -name "init.py" -delete
寻找 。 -路径“/migrations/.pyc”-delete
截断 table:
截断 django_migrations
makemigrations,迁移。
我在 django 2.2 中遇到了同样的问题,以下对我有用...
- 删除驻留在应用程序文件夹中的迁移文件夹
- 也删除pycache文件夹
- 重新启动服务器[如果您的服务器已打开并且您正在使用另一个 cli]
python manage.py makemigrations <app_name> zero
python manage.py makemigrations <app_name>
[显式 app_name 很重要]
python manage.py migrate
w/in 应用程序目录我删除了 pycache
和 migrations
文件夹,
从 django.migrations
表中删除了所有像这样的 PostgreSQL 行
DELETE FROM public.django_migrations
WHERE public.django_migrations.app = 'target_app_name';
为要从头开始创建的表删除任何已创建的应用程序表。
我的没有迁移,因为 django_migrations table 中已经有同名的记录,所以我只是删除它然后迁移工作。
我正在尝试在 python 3.7 中的 django 2.2.4 中进行迁移。 首先,我尝试 make do makemigations:
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
文件),但它仍然不起作用。
(注意:我一直在关注教程:Linking models with Foreign Keys - Django Web Development with Python p.9 by senddex)
您的迁移以某种方式虚拟或伪造地应用到数据库中,截断 django_migrations table 应该有效。
删除所有迁移文件:
找到。 -path "/migrations/.py" -not -name "init.py" -delete 寻找 。 -路径“/migrations/.pyc”-delete
截断 table:
截断 django_migrations
makemigrations,迁移。
我在 django 2.2 中遇到了同样的问题,以下对我有用...
- 删除驻留在应用程序文件夹中的迁移文件夹
- 也删除pycache文件夹
- 重新启动服务器[如果您的服务器已打开并且您正在使用另一个 cli]
python manage.py makemigrations <app_name> zero
python manage.py makemigrations <app_name>
[显式 app_name 很重要]python manage.py migrate
w/in 应用程序目录我删除了
pycache
和migrations
文件夹,从
django.migrations
表中删除了所有像这样的 PostgreSQL 行DELETE FROM public.django_migrations WHERE public.django_migrations.app = 'target_app_name';
为要从头开始创建的表删除任何已创建的应用程序表。
我的没有迁移,因为 django_migrations table 中已经有同名的记录,所以我只是删除它然后迁移工作。