我有一个正在运行的Django 1.6项目,而不是我升级到1.8。我在应用mainapp
中有一个自定义用户模型,如下所示:
class CustomUser(AbstractBaseUser, PermissionsMixin):
...
manage.py migrate
或syncdb
因以下错误而失败:
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 ......必须有一个合适的方法来做到这一点。
答案 0 :(得分:2)
原来这是我正在使用的需要升级的第三方应用之一。不是你可以从错误中辨别出来的。