django app中擴展users表

  • app models中編寫新的Userpython

1 # _*_ coding:utf-8 _*_
  2 from __future__ import unicode_literals
  3
  4 from django.db import models
  5 from django.contrib.auth.models import AbstractUser   # 繼承user
  6
  7 # Create your models here.
  8
  9
 10 class  UserProfile(AbstractUser):
 11     nick_name = models.CharField(max_length=50, verbose_name=u'暱稱', default=
    '')
 12     birday = models.DateField(verbose_name=u'生日', null=True, blank=True)
 13     gender = models.CharField(choices=(('male', u'男'), ('female', u'女')), de
    fault='female', max_length=10)
 14     address = models.CharField(max_length=100, default=u'')
 15     mobile = models.CharField(max_length=11, null=True, blank=True)
 16     image = models.ImageField(upload_to='image/%Y/%m', default=u'image/default
    .png', max_length=100)
 17
 18     class Meta:
 19         verbose_name = '用戶信息'
 20         verbose_name_plural = verbose_name
 21
 22     def __unicode__(self):
 23         return self.username
  • 修改項目的settings.py 文件數據庫

36 INSTALLED_APPS = [
 37     'django.contrib.admin',
 38     'django.contrib.auth',
 39     'django.contrib.contenttypes',
 40     'django.contrib.sessions',
 41     'django.contrib.messages',
 42     'django.contrib.staticfiles',
 43
 44     'users',
 45 ]
 46
 47 AUTH_USER_MODEL = 'users.UserProfile'  # 指定新的users model
  • 遷移表django

python manage.py makemigrations users
python manage.py migrate users   # 在運行這條語句的時候,會讓你選擇是否刪除原來數據庫裏面存在的users表,選擇刪除便可
相關文章
相關標籤/搜索