Django中model.py重写user

来源:互联网 发布:淘宝c店变成企业店铺 编辑:程序博客网 时间:2024/06/06 01:47

1.models.py中引入父类AbstractUser-重写父类

# -*- coding: utf-8 -*-from __future__ import unicode_literals# 添加数据为中文时,设置为utf-8,防止出现中文乱码import sysreload(sys)sys.setdefaultencoding('utf8')from django.db import modelsfrom django.contrib.auth.models import User,AbstractUserfrom django.utils.encoding import python_2_unicode_compatible# Create your models here.# 自定义用户模型# python2.x中使用__unicode__(),python3.x中使用 __str__()# python_2_unicode_compatible:Django内置的用于兼容python2python3Unicode语法的一个装饰器,只针对__str__方法使用@python_2_unicode_compatibleclass MewUsr(AbstractUser):    # 由于是继承自父类AbstractUser(Django默认使用的user类型也继承自该类),在定义字段时,只需要定义默认没有的字段就可以了    profile = models.CharField(max_length=100,verbose_name=u'简介')    class Meta:        verbose_name = u'用户'        verbose_name_plural = verbose_name    def __str__(self):        return self.username2.在setting.py中进行配置
# 如果取消Django内置的user,使用我们自己扩展的新的user,需要配置下代码,目的能够让Django识别新User并加载AUTH_USER_MODEL = 'app.NewUser'


原创粉丝点击