Django继承自带user表并重写的例子

yipeiwu_com5年前Python基础

1.在models里引入

from django.contrib.auth.models import AbstractUser

2.自定义一个类继承AbstractUser

class UsersModels(AbstractUser):
  nick_name = models.CharField(max_length=20, verbose_name='昵称')
  birday = models.DateField(verbose_name='生日', null=True, blank=True)
  address = models.CharField(max_length=50, verbose_name='地址', default='')
  mobile = models.CharField(max_length=11, verbose_name='手机', default='')
  image = models.ImageField(upload_to='images/%Y/%m', default='images/default.png', verbose_name='头像')
  sex = models.CharField(max_length=10, default='',verbose_name='性别')
  age=models.CharField(max_length=5,default='',verbose_name='年龄')
 
  class Meta:
    db_table = 'user'
    verbose_name = '用户信息'
    verbose_name_plural = verbose_name

上面verbose_name是在后台显示的字段名称。

3.在settings里面配置

# 配置使用到的用户模型类
AUTH_USER_MODEL = 'register.UserProfile'  #register 指的是app名称

小知识点

# choices 枚举选项 ,必须从指定的项中选择一个
  send_type = models.CharField(choices=(('register', '注册邮件'), ('forget', '找回密码')), max_length=10, verbose_name='邮件类型')
  # 邮件使用状态
  status = models.BooleanField(choices=((True, '已使用'), (False, '未使用')), verbose_name='邮件状态', default=False)

以上这篇Django继承自带user表并重写的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决python写入mysql中datetime类型遇到的问题

刚开始使用python,还不太熟练,遇到一个datetime数据类型的问题: 在mysql数据库中,有一个datetime类型的字段用于存储记录的日期时间值。python程序中有对应的一...

深入浅析Python传值与传址

1. 传值与传址的区别 传值就是传入一个参数的值,传址就是传入一个参数的地址,也就是内存的地址(相当于指针)。他们的区别是如果函数里面对传入的参数重新赋值,函数外的全局变量是否相应改变:...

Python解决N阶台阶走法问题的方法分析

本文实例讲述了Python解决N阶台阶走法问题的方法。分享给大家供大家参考,具体如下: 题目:一栋楼有N阶楼梯,兔子每次可以跳1、2或3阶,问一共有多少种走法? Afanty的分析: 遇...

Python实现将HTML转成PDF的方法分析

Python实现将HTML转成PDF的方法分析

本文实例讲述了Python实现将HTML转成PDF的方法。分享给大家供大家参考,具体如下: 主要使用的是wkhtmltopdf的Python封装——pdfkit 安装 1. Instal...

对python数据清洗容易遇到的函数-re.sub bytes string详解

re.sub 功能,比replace强大的替换函数,将正则表达式匹配上的模块替换成repl re.sub(pattern, repl, string, count=0, flags=0)...