解决更改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 相关文章推荐
Python中关于字符串对象的一些基础知识
Apr 08 Python
python先序遍历二叉树问题
Nov 10 Python
使用python对文件中的单词进行提取的方法示例
Dec 21 Python
用Python实现大文本文件切割的方法
Jan 12 Python
如何运行.ipynb文件的图文讲解
Jun 27 Python
如何通过50行Python代码获取公众号全部文章
Jul 12 Python
Python GUI学习之登录系统界面篇
Aug 21 Python
Python如何使用内置库matplotlib绘制折线图
Feb 24 Python
详解Python3中的 input() 函数
Mar 18 Python
python下对hsv颜色空间进行量化操作
Jun 04 Python
Python 中如何使用 virtualenv 管理虚拟环境
Jan 21 Python
Python机器学习之KNN近邻算法
May 14 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中选择什么接口(mysql、mysqli)访问mysql
2013/02/06 PHP
nginx下安装php7+php5
2016/07/31 PHP
PHP面向对象自动加载机制原理与用法分析
2016/10/14 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
Javascript this关键字使用分析
2008/10/21 Javascript
javascript demo 基本技巧
2009/12/18 Javascript
js怎么覆盖原有方法实现重写
2014/09/04 Javascript
js原型链与继承解析(初体验)
2016/05/09 Javascript
jQuery基于扩展简单实现倒计时功能的方法
2016/05/14 Javascript
BootStrap智能表单demo示例详解
2016/06/13 Javascript
第一篇初识bootstrap
2016/06/21 Javascript
Vue.js每天必学之Class与样式绑定
2016/09/05 Javascript
JavaScript与java语言有什么不同
2016/09/22 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
PHP捕捉异常中断的方法
2016/10/24 Javascript
Vue数据驱动模拟实现4
2017/01/12 Javascript
JS添加或删除HTML dom元素的方法实例分析
2019/03/05 Javascript
小程序实现按下录音松开识别语音
2019/11/22 Javascript
在vue中axios设置timeout超时的操作
2020/09/04 Javascript
vue3+typeScript穿梭框的实现示例
2020/12/29 Vue.js
跟老齐学Python之有容乃大的list(3)
2014/09/15 Python
python通过邮件服务器端口发送邮件的方法
2015/04/30 Python
Python中的localtime()方法使用详解
2015/05/22 Python
Python使用PDFMiner解析PDF代码实例
2017/03/27 Python
Flask模拟实现CSRF攻击的方法
2018/07/24 Python
python实现根据指定字符截取对应的行的内容方法
2018/10/23 Python
使用50行Python代码从零开始实现一个AI平衡小游戏
2018/11/21 Python
Python离线安装各种库及pip的方法
2020/11/28 Python
python上下文管理器异常问题解决方法
2021/02/07 Python
实例讲解使用CSS实现多边框和透明边框的方法
2015/09/08 HTML / CSS
viagogo意大利票务平台:演唱会、体育比赛、戏剧门票
2018/01/26 全球购物
英国工作场所设备购买网站:Slingsby
2019/05/03 全球购物
国际贸易专业个人求职信格式
2014/02/02 职场文书
努力学习演讲稿
2014/05/10 职场文书
2014年信息宣传工作总结
2014/12/18 职场文书
2015年社会实践个人总结
2015/03/06 职场文书