django 1.7 关系 "auth_user" 在迁移中不存在但在测试中很好

django 1.7 relation "auth_user" does not exist in migrate but fine in tests

我正在将 django-1.5 项目更新为 django-1.7.2,并且在迁移时我不断收到 "relation "auth_user“不存在”。但是如果我 运行 python manage.py test -v2 来查看数据库进程 creation/migration

Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying subscription.0001_initial... OK

迁移结果很好。我错过了一步吗?我相信人们不再需要 syncdb 了

python manage.py migrate

但是这样做并不适用于 django 应用程序的迁移。

注意:我没有使用自定义用户 class,只是常规 django.contrib.auth.models.User

你需要做两件事:

python manage.py makemigrations

然后

python manage.py migrate

迁移确实应用了迁移,但首先需要创建它们。这两个步骤或多或少是对旧的syncdb的替换。

可能是您已经在真实数据库上伪造了身份验证迁移?

尝试检查

select * from django_migrations where app='auth'

如果存在任何记录,请将其删除。