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

yipeiwu_com6年前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实现字典依据value排序

具体内容如下: 使用sorted将字典按照其value大小排序 >>> record = {'a':89, 'b':86, 'c':99, 'd':100} &g...

详解python分布式进程

在Thread和Process中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分布到同一台机器的多个CPU上。 Py...

python 实现提取某个索引中某个时间段的数据方法

如下所示: from elasticsearch import Elasticsearch import datetime import time import dateutil.p...

Python函数返回不定数量的值方法

Python的函数是可以return多个值的,但其本质上还是返回单个值,只是利用了tuple的自动打包,将多个值打包成单个tuple返回。 使用代码验证: def func_a():...

PyCharm下载和安装详细步骤

PyCharm下载和安装详细步骤

PyCharm下载和安装 进入https://www.jetbrains.com/pycharm/download/官方下载页面(如图 2 所示),可以看到 PyCharm 有 2 个...