欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2023-08-25 12:52:08
本文实例讲述了django框架自定义用户表操作。分享给大家供大家参考,具体如下: django中已经给我生成默认的user表,其中的字段已经可以满足我们的日常需求。 但...

本文实例讲述了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程序设计有所帮助。