Django后臺admin的使用詳解
簡述:
Django的admin可以提供一個強大的后臺管理功能,可以在web界面對數(shù)據(jù)庫進(jìn)行操作,我們需要修改admin.py將要操作的數(shù)據(jù)表注冊到后臺管理中
創(chuàng)建數(shù)據(jù)表:
為了便于演示,我們在models.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中注冊
啟動服務(wù),進(jìn)入界面
python manage.py makemigrations #生成創(chuàng)建數(shù)據(jù)表py文件 python manage.py migrate #執(zhí)行py文件,更新數(shù)據(jù)庫 python manage.py runserver #啟動服務(wù)
打開瀏覽器,訪問 http://127.0.0.1 :8000/admin
輸入設(shè)置的賬號密碼,進(jìn)入界面
默認(rèn)的功能可以對表進(jìn)行簡單的增刪改查,如果需要批量更新之類的操作,則需要定制相應(yīng)動作
自定義內(nèi)容顯示:
我們選擇進(jìn)入我們創(chuàng)建的表的界面的時候,默認(rèn)顯示的內(nèi)容是object
可以在models.py中的相應(yīng)表寫下定義__str__的字段
效果如下
默認(rèn)顯示的內(nèi)容只有一個,我們可以通過定義ModelAdmin中的list_display來修改它:
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)
點擊一條數(shù)據(jù)后,將默認(rèn)顯示每個字段不是一個AutoField并且editable=True在單個字段集中具有與模型中定義的字段相同的順序。
我們可以定義ModelAdmin中的fields或exclude來修改它:
class imgAdmin(admin.ModelAdmin): list_display = ('title','summary','file') fields = ('title',)
exclude跟fields相反
自定義動作
默認(rèn)動作只有刪除一項
我們可以通過ModelAdmin自定義
def change_up(modeladmin, request, queryset): #定義動作 queryset.update(stat='1') change_up.short_description = "up" #重寫動作顯示名稱 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] #綁定動作
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳解Python中@staticmethod和@classmethod區(qū)別及使用示例代碼
這篇文章主要介紹了詳解Python中@staticmethod和@classmethod區(qū)別及使用示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Keras使用ImageNet上預(yù)訓(xùn)練的模型方式
這篇文章主要介紹了Keras使用ImageNet上預(yù)訓(xùn)練的模型方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05