Django 1.8:迁移打破了AbstractBaseUser

时间:2015-05-01 11:48:03

标签: django django-models django-migrations django-1.8

我有一个正在运行的Django 1.6项目,而不是我升级到1.8。我在应用mainapp中有一个自定义用户模型,如下所示:

class CustomUser(AbstractBaseUser, PermissionsMixin):
    ...

manage.py migratesyncdb因以下错误而失败:

Operations to perform:
  Synchronize unmigrated apps: gis, gunicorn, staticfiles, guardian, messages, captcha, corsheaders, bootstrapform
  Apply all migrations: sessions, admin, sites, auth, contenttypes, mainapp
Synchronizing apps without migrations:
  Creating tables...
    Creating table guardian_userobjectpermission
    Creating table guardian_groupobjectpermission
    Creating table corsheaders_corsmodel
    Running deferred SQL...
    ...
    django.db.utils.ProgrammingError: relation "auth_permission" does not exist

我按照Django 1.8 RC1: ProgrammingError when creating database tables中的答案运行了应用程序的makemigrations(以及可以迁移的所有其他应用程序,包括auth)。没有检测到任何更改,migrate在此之后继续失败。我怎么能纠正这个?

HACKY WORKAROUND: 我可以通过在INSTALLED_APPS中评论我的所有应用,然后按特定顺序添加它们并在我继续运行migrate时启动项目。 WTF ......必须有一个合适的方法来做到这一点。

1 个答案:

答案 0 :(得分:2)

原来这是我正在使用的需要升级的第三方应用之一。不是你可以从错误中辨别出来的。