Django自定义用户模型报错:admin.LogEntry.user引用无效求助
Django自定义用户模型报错解决:admin.LogEntry.user引用问题
报错信息:
ValueError:The field admin.LogEntry.user was declared with a lazy reference to 'recipes.customuser',but app'recipes'doesn't provide model 'customuser'
解决步骤:
检查INSTALLED_APPS配置
确认settings.py的INSTALLED_APPS中已添加'recipes',Django需要通过这个配置识别你的应用,否则无法找到对应模型。重新生成并应用迁移
如果是首次配置自定义用户模型,或之前的迁移存在冲突,执行以下命令:# 为recipes应用生成迁移文件 python manage.py makemigrations recipes # 应用所有迁移 python manage.py migrate重置迁移(开发环境适用)
若项目创建后才修改AUTH_USER_MODEL,导致admin的LogEntry模型已绑定旧用户模型的迁移记录,需重置迁移:- 删除所有应用(包括
django.contrib.admin、django.contrib.auth)下migrations文件夹内的文件(保留__init__.py) - 删除本地数据库文件(如
db.sqlite3) - 重新执行
makemigrations和migrate命令
- 删除所有应用(包括
验证模型定义
确认recipes/models.py中的CustomUser类:- 正确继承
AbstractUser - 类名拼写无误(
CustomUser) - 没有语法错误导致模型未被正确加载
- 正确继承
内容的提问来源于stack exchange,提问作者Rohit Parodhi
相关产品推荐
相关产品推荐

