django框架自定义用户表操作示例

yipeiwu_com6年前Python基础

本文实例讲述了django框架自定义用户表操作。分享给大家供大家参考,具体如下:

django中已经给我生成默认的User表,其中的字段已经可以满足我们的日常需求。

但有时候,我们需要更多的字段,我们就可以自定义。来替换django自带的User表。

models.py

from django.contrib.auth.models import AbstractUser
class UserProfile(AbstractUser):
  nick_name = models.CharField(max_length=50, verbose_name=u'昵称')
  birthday = models.DateField(verbose_name=u'生日', null=True, blank=True)
  gender = models.CharField(max_length=10, choices=(("male", u'男'), ("female", u'女')), default='female')
  address = models.CharField(max_length=11, verbose_name=u'地址', null=True, blank=True)
  image = models.ImageField(upload_to='image/%Y/%m', default=u"image/default.png", max_length=100)
  phone = models.CharField(max_length=11, verbose_name=u"手机号码", null=True, blank=True)
  # image依赖Pillow
  class Meta:
    verbose_name = u"用户信息"
    verbose_name_plural = verbose_name
  def __unicode__(self):
    return self.username

adminx.py

from xadmin.plugins.auth import UserAdmin
class UserProfileAdmin(UserAdmin):
  pass

settings.py

INSTALLED_APPS = [
  ...
  'users',
  ....
]
AUTH_USER_MODEL="users.UserProfile"

然后就可以makemigrations,migrate

然后就可以创建超级用户。如果之前创建过,会被删除,需要重新创建。

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

相关文章

Python与R语言的简要对比

Python与R语言的简要对比

数据挖掘技术日趋成熟和复杂,随着互联网发展以及大批海量数据的到来,之前传统的依靠spss、SAS等可视化工具实现数据挖掘建模已经越来越不能满足日常需求,依据美国对数据科学家(data s...

编写简单的Python程序来判断文本的语种

1.问题的描述 用Python进行文本处理时,有时候处理的文本中包含中文、英文、日文等多个语系的文本,有时候不能同时进行处理,这个时候就需要判别当前文本是属于哪个语系的。Python中有...

Python结合ImageMagick实现多张图片合并为一个pdf文件的方法

Python结合ImageMagick实现多张图片合并为一个pdf文件的方法

本文实例讲述了Python结合ImageMagick实现多张图片合并为一个pdf文件的方法。分享给大家供大家参考,具体如下: 前段时间买了不少书,现在手头的书籍积累的越来越多,北京这边租...

用Python实现web端用户登录和注册功能的教程

用Python实现web端用户登录和注册功能的教程

用户管理是绝大部分Web网站都需要解决的问题。用户管理涉及到用户注册和登录。 用户注册相对简单,我们可以先通过API把用户注册这个功能实现了: _RE_MD5 = re.compil...

Windows系统下多版本pip的共存问题详解

Windows系统下多版本pip的共存问题详解

前言 可能很多人一看到这个标题直接就关闭了,这么简单和low的问题有必要说出来吗?一看就知道是个Python的小白。如果你是这么想的话,那么就没有必要看下去了,因为对你来说也没有...