如何配置Django的auth用户模型使用UUID(Postgres)并解决模型未安装报错
错误原因
这个报错是由两个配置错误共同导致的:
- Django的
AUTH_USER_MODEL参数要求格式为应用名.模型类名,而非模型文件的路径。你当前填写的models.CustomUser中models是模型文件夹名称,并非注册的应用名,你的应用实际名为cbapp。 - 你将
CustomUser模型定义在models包下的custom_user.py文件中,没有在包的入口文件中暴露该模型,Django扫描cbapp的模型时无法识别到这个类。
解决步骤
- 修改
settings.py中的AUTH_USER_MODEL配置:
将原配置
AUTH_USER_MODEL = 'models.CustomUser'
修改为
AUTH_USER_MODEL = 'cbapp.CustomUser'
- 编辑
cbapp/models/__init__.py文件,添加导入语句,将自定义用户模型暴露给Django:
from .custom_user import CustomUser
- 重新执行迁移命令即可正常运行:
python manage.py makemigrations
内容的提问来源于stack exchange,提问作者Dave
相关产品推荐
相关产品推荐

