Django迁移报错:Related model 'auth.user'无法解析求助
问题根源
报错出在执行socialaccount.0001_initial迁移时,该迁移依赖auth.User模型,但Django默认的迁移执行顺序导致auth模块还未完成迁移,就先执行了socialaccount的迁移,从而触发无法解析关联模型的错误。本地环境正常是因为之前已经完成过核心模块的迁移,不存在依赖顺序问题。
解决步骤
1. 优先迁移Django核心依赖模块
先手动执行auth、contenttypes等核心模块的迁移,确保基础模型先创建:
py manage.py migrate auth py manage.py migrate contenttypes py manage.py migrate sessions py manage.py migrate sites
2. 迁移allauth相关模块
核心模块迁移完成后,再执行allauth系列的迁移:
py manage.py migrate account py manage.py migrate socialaccount
3. 迁移自定义应用
最后迁移你的FriendsAnalyzer应用:
py manage.py migrate FriendsAnalyzer
额外检查
确认settings.py的INSTALLED_APPS中包含以下应用,且顺序正确(核心应用在前,第三方应用在后):
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', # allauth必须依赖此应用 'allauth', 'allauth.account', 'allauth.socialaccount', 'FriendsAnalyzer', ]
内容的提问来源于stack exchange,提问作者Davie Blain
相关产品推荐
相关产品推荐

