Django后臺(tái)admin的使用詳解
簡(jiǎn)述:
Django的admin可以提供一個(gè)強(qiáng)大的后臺(tái)管理功能,可以在web界面對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,我們需要修改admin.py將要操作的數(shù)據(jù)表注冊(cè)到后臺(tái)管理中
創(chuàng)建數(shù)據(jù)表:
為了便于演示,我們?cè)趍odels.py中創(chuàng)建一張img數(shù)據(jù)表規(guī)則

圖中 verbo_name 是在admin界面顯示表字段的名稱,定義的class Meta中的verbo_name是在admin界面顯示的表名
修改admin.py文件
from django.contrib import admin from app1 import models # Register your models here. admin.site.register(models.img) #將表在admin中注冊(cè)
啟動(dòng)服務(wù),進(jìn)入界面
python manage.py makemigrations #生成創(chuàng)建數(shù)據(jù)表py文件 python manage.py migrate #執(zhí)行py文件,更新數(shù)據(jù)庫(kù) python manage.py runserver #啟動(dòng)服務(wù)
打開瀏覽器,訪問(wèn) http://127.0.0.1 :8000/admin

輸入設(shè)置的賬號(hào)密碼,進(jìn)入界面

默認(rèn)的功能可以對(duì)表進(jìn)行簡(jiǎn)單的增刪改查,如果需要批量更新之類的操作,則需要定制相應(yīng)動(dòng)作
自定義內(nèi)容顯示:
我們選擇進(jìn)入我們創(chuàng)建的表的界面的時(shí)候,默認(rèn)顯示的內(nèi)容是object

可以在models.py中的相應(yīng)表寫下定義__str__的字段

效果如下

默認(rèn)顯示的內(nèi)容只有一個(gè),我們可以通過(guò)定義ModelAdmin中的list_display來(lái)修改它:
from django.contrib import admin
from app1.models import img
# Register your models here.
class imgAdmin(admin.ModelAdmin):
list_display = ('title','summary','file')
admin.site.register(img,imgAdmin)

點(diǎn)擊一條數(shù)據(jù)后,將默認(rèn)顯示每個(gè)字段不是一個(gè)AutoField并且editable=True在單個(gè)字段集中具有與模型中定義的字段相同的順序。

我們可以定義ModelAdmin中的fields或exclude來(lái)修改它:
class imgAdmin(admin.ModelAdmin):
list_display = ('title','summary','file')
fields = ('title',)

exclude跟fields相反
自定義動(dòng)作
默認(rèn)動(dòng)作只有刪除一項(xiàng)

我們可以通過(guò)ModelAdmin自定義
def change_up(modeladmin, request, queryset): #定義動(dòng)作
queryset.update(stat='1')
change_up.short_description = "up" #重寫動(dòng)作顯示名稱
def change_down(modeladmin, request, queryset):
queryset.update(stat='0')
change_down.short_description = "down"
class imgAdmin(admin.ModelAdmin):
list_display = ('title','summary','file','stat')
fields = ('title',)
actions = [change_up,change_down] #綁定動(dòng)作

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
如何基于Python實(shí)現(xiàn)word文檔重新排版
這篇文章主要介紹了如何基于Python實(shí)現(xiàn)word文檔重新排版,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09
python獲取引用對(duì)象的個(gè)數(shù)方式
今天小編就為大家分享一篇python獲取引用對(duì)象的個(gè)數(shù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
利用Python第三方庫(kù)xlrd讀取Excel中數(shù)據(jù)實(shí)例代碼
python操作excel主要用到xlrd和xlwt這兩個(gè)庫(kù),即xlrd是讀excel,xlwt是寫excel的庫(kù),下面這篇文章主要給大家介紹了關(guān)于利用Python第三方庫(kù)xlrd讀取Excel中數(shù)據(jù)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07
python散點(diǎn)圖實(shí)例之隨機(jī)漫步
這篇文章主要為大家詳細(xì)介紹了python散點(diǎn)圖實(shí)例之隨機(jī)漫步,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08
使用Django實(shí)現(xiàn)把兩個(gè)模型類的數(shù)據(jù)聚合在一起
這篇文章主要介紹了使用Django實(shí)現(xiàn)把兩個(gè)模型類的數(shù)據(jù)聚合在一起,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03
TensorFlow實(shí)現(xiàn)自定義Op方式
今天小編就為大家分享一篇TensorFlow實(shí)現(xiàn)自定義Op方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02

