auth模块是Django提供的标准权限管理系统,可以提供用户身份认证, 用户组和权限管理。
User模型
Django 内置了User模型,包含了username,password,email等字段信息。但是实际使用时,可能会包含一些其他的字段信息,例如手机号,头像,签名信息等。此时需要在系统的User模型上进行拓展。
- 应用目录下的models.py
注意,需要继承AbstractUser类。
class User(AbstractUser):
phones = models.CharField(max_length=50, null=True)
class Meta:
db_table = 'user'
此时,添加了一个手机号的字段。
- settings.py中添加配置
AUTH_USER_MODEL = 'App01.User'
- 进行数据库迁移
python manage.py makemigrations
python manage.py migrate
常用功能
应用下的urls.py
app_name = 'App01'
urlpatterns = [
path('register/', views.register, name='register'),
path('login/', views.user_login, name='login'),
path('index/', views.index, name