解决更改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实现ssh批量登录并执行命令
Oct 25 Python
python使用参数对嵌套字典进行取值的方法
Apr 26 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
Aug 01 Python
python实现网站用户名密码自动登录功能
Aug 09 Python
python批量处理文件或文件夹
Jul 28 Python
如何在python中写hive脚本
Nov 08 Python
python带参数打包exe及调用方式
Dec 21 Python
Python简单实现区域生长方式
Jan 16 Python
python:HDF和CSV存储优劣对比分析
Jun 08 Python
Python如何把字典写入到CSV文件的方法示例
Aug 23 Python
利用Python发送邮件或发带附件的邮件
Nov 12 Python
PyCharm 解决找不到新打开项目的窗口问题
Jan 15 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 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用
2011/07/17 PHP
php上传图片之时间戳命名(保存路径)
2014/08/15 PHP
提交表单后 PHP获取提交内容的实现方法
2016/05/25 PHP
Laravel SQL语句记录方式(推荐)
2016/05/26 PHP
JavaScript DOM学习第一章 W3C DOM简介
2010/02/19 Javascript
在Ajax中使用Flash实现跨域数据读取的实现方法
2010/12/02 Javascript
jQuery News Ticker 基于jQuery的即时新闻行情展示插件
2011/11/05 Javascript
浅析ajax请求json数据并用js解析(示例分析)
2013/07/13 Javascript
jquery选择器使用详解
2014/04/08 Javascript
js简单实现交换Li的值
2014/05/22 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
angular ng-click防止重复提交实例
2017/06/16 Javascript
浅谈Angular路由守卫
2017/08/26 Javascript
利用node实现一个批量重命名文件的函数
2017/12/21 Javascript
ECharts地图绘制和钻取简易接口详解
2019/07/12 Javascript
微信小程序 确认框的实现(附代码)
2019/07/23 Javascript
element-ui中Table表格省市区合并单元格的方法实现
2019/08/07 Javascript
jQuery实现手风琴效果(蒙版)
2020/01/11 jQuery
微信小程序webSocket的使用方法
2020/02/20 Javascript
ajax jquery实现页面某一个div的刷新效果
2021/03/04 jQuery
[46:37]LGD vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python脚本实现代码行数统计代码分享
2015/03/10 Python
对于Python中RawString的理解介绍
2016/07/07 Python
Python的requests网络编程包使用教程
2016/07/11 Python
python 网络编程常用代码段
2016/08/28 Python
windows及linux环境下永久修改pip镜像源的方法
2016/11/28 Python
python中判断文件编码的chardet(实例讲解)
2017/12/21 Python
python 爬取马蜂窝景点翻页文字评论的实现
2020/01/20 Python
Django缓存Cache使用详解
2020/11/30 Python
canvas仿写贝塞尔曲线的示例代码
2017/12/29 HTML / CSS
John Varvatos官方网站:设计师男士时装
2017/02/08 全球购物
ProBikeKit新西兰:自行车套件,跑步和铁人三项装备
2017/04/05 全球购物
红领巾心向党广播稿
2014/01/19 职场文书
先进个人获奖感言
2014/01/24 职场文书
行政副总岗位职责
2014/02/23 职场文书
我为党旗添光彩演讲稿
2014/09/10 职场文书