Django擴充套件內建User類

2022-08-03 19:00:22 字數 1458 閱讀 7551

內建user類

使用內建user可以方便實現登入驗證,利用admin管理介面還可以方便新增、刪除、修改使用者。

乙個內建的user類定義了以下字段:

username: 使用者名稱

password: 密碼

first_name: 姓名first

last_name: 姓名last

email: 郵箱

groups: group類多對多的關係物件管理器

user_permissions: permission類多對多的關係物件管理器

is_staff: 是否工作人員

is_active: 是否啟用

is_superuser: 是否管理員

last_login: 最近登入時間

date_joined: 註冊時間

擴充套件內建user類

在某些場合,使用者需要新增自定義的字段(比如:**號碼),此時就需要擴充套件user類:

1. 建立乙個user應用

2. 在user應用model.py檔案中新建乙個userinfo的新類,繼承於abstractuser類:

from

django.db import models

from

django.contrib.auth.models import abstractuser

# 新增**字段

class

userinfo(abstractuser):

phone = models.charfield(null=true, max_length=20, verbose_name='

**', default=''

)

class

meta:

pass

3. 修改settings.py

'django.contrib.admin',

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.messages',

'django.contrib.staticfiles',

'guardian',

'homepage',

'rest_framework',

'rest_framework.authtoken

', # tokenauthentication

'user

', # 新增user應用

'stock',

'future',

'api',

'perm']

# 設定auth_user_model

auth_user_model = '

user.userinfo

'

Django內建模型User常見的操作

常見的方法有 create user 建立普通使用者,會對密碼進行加密 create superuser 建立超級使用者,會對密碼進行加密 set password 對密碼進行加密 username password email is superuser is staff is active 如果u...

Django內建分頁擴充套件

1.url檔案 ulr檔案 from django.contrib import admin from django.urls import path urlpatterns path admin admin.site.urls path index,views.index path show vi...

Python繼承擴充套件內建類

繼承最有趣的應用是給內建類新增功能,在之前的contact類中,我們將聯絡人新增到所有聯絡人的列表裡,如果想通過名字來搜尋,那麼就可以在contact類新增乙個方法用於搜尋,但是這種方法實際上屬於列表本身,我們可以使用繼承來做 class contactlist list defsearch sel...