解决更改AUTH_USER_MODEL后出现的问题


Posted in Python onMay 14, 2020

使用django自带的 AbstractUser 扩展之后,更改AUTH_USER_MODEL = 'users.UserProfile'属性后,进行数据库迁移时,

出现如下报错:

ValueError: The field admin.LogEntry.user was declared with a lazy reference to 'user.patient', but app 'users' isn't installed.

解决更改AUTH_USER_MODEL后出现的问题

通过如下两种方式注册app:

解决更改AUTH_USER_MODEL后出现的问题

单独设置时,报错情况未变。

取消注释,则报unique错误,app必须唯一

后经过仔细查询,找到解决办法,并尝试解决成功:

找到自己的/python3X/lib/site-packages/django/contrib/admin/migrations文件夹,把里面除了__init__.py的所有文件,全部删了再makemigrations就可以了

补充知识:自定义userprofile覆盖默认user表

一、创建users app

startapp users

二、创建userprofile模型

from django.db import models
from django.contrib.auth.models import AbstractUser

class UserProfile(AbstractUser):
 nick_name = models.CharField(max_length=50,verbose_name=u"昵称", default="")
 birday = models.DateField(verbose_name=u"生日", null=True, blank=True)
 gender = models.CharField(max_length=5, choices=(("male",u"男"),("female",u"女")), default="female")
 address = models.CharField(max_length=100, default=u"")
 mobile = models.CharField(max_length=11, null=True, blank=True)
 image = models.ImageField(upload_to="image/%Y/%m", default=u"image/default.png", max_length=100)

 class Meta:
  verbose_name = "用户信息"
  verbose_name_plural = verbose_name

 def __str__(self):
  return self.username

三、在setting.py中更改用户模型

+
AUTH_USER_MODEL = "users.UserProfile"

以上这篇解决更改AUTH_USER_MODEL后出现的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
图文详解WinPE下安装Python
May 17 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
Aug 18 Python
pandas DataFrame实现几列数据合并成为新的一列方法
Jun 08 Python
在cmder下安装ipython以及环境的搭建
Oct 19 Python
浅谈python实现Google翻译PDF,解决换行的问题
Nov 28 Python
python从子线程中获得返回值的方法
Jan 30 Python
Python安装及Pycharm安装使用教程图解
Sep 20 Python
TensorFlow梯度求解tf.gradients实例
Feb 04 Python
通过python调用adb命令对App进行性能测试方式
Apr 23 Python
python中slice参数过长的处理方法及实例
Dec 15 Python
Python Selenium库的基本使用教程
Jan 04 Python
Python爬虫爬取ts碎片视频+验证码登录功能
Feb 22 Python
Python基于numpy模块实现回归预测
May 14 #Python
Django之全局使用request.user.username的实例详解
May 14 #Python
Django使用Profile扩展User模块方式
May 14 #Python
python网络编程之五子棋游戏
May 14 #Python
Jupyter notebook如何修改平台字体
May 13 #Python
解决启动django,浏览器显示“服务器拒绝访问”的问题
May 13 #Python
Django 允许局域网中的机器访问你的主机操作
May 13 #Python
You might like
PHP+.htaccess实现全站静态HTML文件GZIP压缩传输(一)
2007/02/15 PHP
PHP中比较两个字符串找出第一个不同字符位置例子
2014/04/08 PHP
PHP入门教程之上传文件实例详解
2016/09/11 PHP
Yii2针对游客、用户防范规则和限制的解决方法分析
2016/10/08 PHP
PHP长连接实现与使用方法详解
2018/02/11 PHP
Javascript之文件操作
2007/03/07 Javascript
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
jquery ajax请求实例深入解析
2012/11/26 Javascript
chrome浏览器不支持onmouseleave事件的解决技巧
2013/05/31 Javascript
javascript中去除数组重复元素的实现方法【实例】
2016/04/12 Javascript
微信小程序-消息提示框实例
2016/11/24 Javascript
微信小程序 详解Page中data数据操作和函数调用
2017/01/12 Javascript
原生js实现新闻列表展开/收起全文功能
2017/01/20 Javascript
javascript使用btoa和atob来进行Base64转码和解码
2017/03/20 Javascript
JavaScript字符串_动力节点Java学院整理
2017/06/27 Javascript
微信小程序的日期选择器的实例详解
2017/09/29 Javascript
深入浅析AngularJs模版与v-bind
2018/07/06 Javascript
JS开发 富文本编辑器TinyMCE详解
2019/07/19 Javascript
[06:24]DOTA2 2015国际邀请赛中国区预选赛第二日TOP10
2015/05/27 DOTA
详解Python中的正则表达式的用法
2015/04/09 Python
Python操作MongoDB数据库PyMongo库使用方法
2015/04/27 Python
Python用Bottle轻量级框架进行Web开发
2016/06/08 Python
使用Python写CUDA程序的方法
2017/03/27 Python
Python搭建FTP服务器的方法示例
2018/01/19 Python
python检索特定内容的文本文件实例
2018/06/05 Python
Python 3.6 -win64环境安装PIL模块的教程
2019/06/20 Python
python super用法及原理详解
2020/01/20 Python
Django 解决model 反向引用中的related_name问题
2020/05/19 Python
Pytorch 卷积中的 Input Shape用法
2020/06/29 Python
python 实现aes256加密
2020/11/27 Python
详解Django关于StreamingHttpResponse与FileResponse文件下载的最优方法
2021/01/07 Python
法律专业推荐信范文
2013/11/29 职场文书
青年教师师德演讲稿
2014/08/26 职场文书
赵乐秦在党的群众路线教育实践活动总结大会上的讲话稿
2014/10/25 职场文书
考生诚信考试承诺书
2015/04/29 职场文书
互联网的下一个风口:新的独角兽将诞生
2019/08/02 职场文书