Django 自带的 User
类就已经帮我们实现了用户的注册和登陆的基本功能. 可是, 这个类只包含了 username
, first_name
, last_name
, email
这4个基础字段, 且first_name
, last_name
, 和email
字段都是非必填的. 如果我们需要User
表里面有更多的字段, 那么我们可以自己来拓展 Django这个类.
源码分析
1 | class User(AbstractUser): |
从源码可以看出, 自带的User
继承自AbstractUser
. 如果我们要添加字段或者更改字段, 也需要继承 AbstractUser
.
拓展
1 | from django.contrib.auth.models import AbstractUser |
使用模型
当我们完成User
表的拓展的时候, 工作并没有结束, 我们还需要告诉Django来使用我们刚刚拓展的User
模型来验证登陆和注册.
在settings.py
添加1
AUTH_USER_MODEL = 'manager.User'
这样才算完成.
EOF