欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django自定義用戶表+自定義admin后臺(tái)中的字段實(shí)例

 更新時(shí)間:2019年11月18日 10:13:00   作者:小鳳九  
今天小編就為大家分享一篇Django自定義用戶表+自定義admin后臺(tái)中的字段實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

1.自定義用戶表 注意事項(xiàng)

必須在settings中配置AUTH_USER_MODEL這個(gè)字段

  # 覆蓋默認(rèn)的用戶模型,使用自定義用戶模型
  # 語 法:'app的名稱.自定義用戶模型的名稱'
  AUTH_USER_MODEL = 'admi.UserModel'

2.在models文件中編寫UserModel類

from django.db import models
from django.contrib.auth.models import AbstractUser
# Django框架將createsuperuser創(chuàng)建的用戶以及在amdin后臺(tái)添加的用戶,默認(rèn)都保存在了auth_user這個(gè)表中,但是這個(gè)表的字段是固定的,如果想給用戶擴(kuò)展一些字段(年齡、性別、住址等),就需要重寫User表了,不能再使用auth_user這個(gè)表了。

class UserModel(AbstractUser):
    # AbstractUser這個(gè)類,也就是Django框架默認(rèn)使用的一個(gè)用于管理用戶的User類,這個(gè)類生成一個(gè)auth_user表。所以,要擴(kuò)展用戶屬性,可以繼承AbstractUser,在子類UserModel中實(shí)現(xiàn)擴(kuò)展。  
    nick_name=models.CharField(max_length=25,verbose_name='昵稱')
    user_address=models.CharField(max_length=35,verbose_name='住址')

    class Meta:
     # 配置自定義用戶表名是user_table
      db_table='user_table'
      verbose_name='用戶'
      verbose_name_plural=verbose_name

添加完成后,在當(dāng)前app的admin文件中注冊(cè)

# 只要使用admin后臺(tái)系統(tǒng),所有的Model必須在這里進(jìn)行注冊(cè)
admin.site.register(UserModel)

3.測(cè)試

編寫完上述步驟后,makemigrations、migrate同步數(shù)據(jù)庫

然后打開用戶的數(shù)據(jù)庫管理工具,可以看到user_table這個(gè)表已經(jīng)生成了,而且表中生成了我們創(chuàng)建的兩個(gè)字段

nick_name和user_address

4.進(jìn)入admin后臺(tái)測(cè)試

先使用createsuper創(chuàng)建一個(gè)superuser用戶

通過admin登錄到后臺(tái)

后臺(tái)自動(dòng)生成了一個(gè)字段代表用戶名,我們把UserModel中Meat下verbose_name=‘用戶' 修改成用戶名,然后刷新admin頁面,admin中的字段也會(huì)隨之改變。

(這樣也不需要更新數(shù)據(jù)庫,是不是很方便呢?)

5.后臺(tái)字段擴(kuò)展

a.更改用戶名顯示的內(nèi)容(只顯示admin是不是很單調(diào)?)

在UserModel中使用__str__魔法方法

具體效果

b.讓后臺(tái)信息顯示多個(gè)字段

  # 修改app下的admin.py文件
  from django.contrib import admin
  from .models import *
  class UserAdmin(admin.ModelAdmin):
    # 設(shè)置顯示數(shù)據(jù)庫中哪些字段
    list_display = ['username','password','nick_name','user_address']
    
  admin.site.register(UserModel,UserAdmin)

效果

以上這篇Django自定義用戶表+自定義admin后臺(tái)中的字段實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用XML庫的方式,實(shí)現(xiàn)RPC通信的方法(推薦)

    使用XML庫的方式,實(shí)現(xiàn)RPC通信的方法(推薦)

    下面小編就為大家?guī)硪黄褂肵ML庫的方式,實(shí)現(xiàn)RPC通信的方法(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • python之pyqt5通過按鈕改變Label的背景顏色方法

    python之pyqt5通過按鈕改變Label的背景顏色方法

    今天小編就為大家分享一篇python之pyqt5通過按鈕改變Label的背景顏色方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • django刪除表重建的實(shí)現(xiàn)方法

    django刪除表重建的實(shí)現(xiàn)方法

    今天小編就為大家分享一篇django刪除表重建的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • matplotlib繪制甘特圖的萬能模板案例

    matplotlib繪制甘特圖的萬能模板案例

    matplotlib是常見的繪圖庫,本文主要介紹了matplotlib繪制甘特圖的萬能模板案例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • 解決pycharm下pyuic工具使用的問題

    解決pycharm下pyuic工具使用的問題

    這篇文章主要介紹了解決pycharm下pyuic工具使用的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 基于Python新建用戶并產(chǎn)生隨機(jī)密碼過程解析

    基于Python新建用戶并產(chǎn)生隨機(jī)密碼過程解析

    這篇文章主要介紹了基于Python新建用戶并產(chǎn)生隨機(jī)密碼過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • python numpy中multiply與*及matul 的區(qū)別說明

    python numpy中multiply與*及matul 的區(qū)別說明

    這篇文章主要介紹了python numpy中multiply與*及matul 的區(qū)別說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • pandas提取數(shù)據(jù)的6種方法匯總

    pandas提取數(shù)據(jù)的6種方法匯總

    這篇文章主要介紹了pandas提取數(shù)據(jù)的6種方法匯總,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • python實(shí)現(xiàn)可將字符轉(zhuǎn)換成大寫的tcp服務(wù)器實(shí)例

    python實(shí)現(xiàn)可將字符轉(zhuǎn)換成大寫的tcp服務(wù)器實(shí)例

    這篇文章主要介紹了python實(shí)現(xiàn)可將字符轉(zhuǎn)換成大寫的tcp服務(wù)器,通過tcp服務(wù)器端實(shí)現(xiàn)針對(duì)字符的轉(zhuǎn)換與返回功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-04-04
  • Python常見內(nèi)置高階函數(shù)即高階函數(shù)用法

    Python常見內(nèi)置高階函數(shù)即高階函數(shù)用法

    這篇文章主要介紹了Python的三種高階函數(shù)map、filter、reduce,高階函數(shù)就是一個(gè)函數(shù)可以作為參數(shù)傳給另外一個(gè)函數(shù),或者一個(gè)函數(shù)的返回值為另外一個(gè)函數(shù)(若返回值為該函數(shù)本身,則為遞歸),滿足其一則為高階函數(shù),具體內(nèi)容,需要的朋友可以參考下面文章的介紹
    2021-12-12

最新評(píng)論