1. 程式人生 > >Django Admin後臺管理

Django Admin後臺管理

沒有 tab 分享圖片 bdb 存在 stack caf tro col

1.使用

(1)本地化,語言和時區本地化

技術分享圖片

(2)創建超級管理員

技術分享圖片

(3)註冊模型類:定義顯示的內容

(a)models.py定義
技術分享圖片

(b)效果

技術分享圖片

(c)admin.py註冊

技術分享圖片

(4)自定義管理頁面:顯示方式,固件

(a)自定義模型管理類

技術分享圖片

效果:

技術分享圖片

(b)註冊模型類的時候給register函數添加第二個參數,就是自定義模型管理類的名字

返回表的標題

技術分享圖片

技術分享圖片

(5)關聯對象

無法直接訪問關聯對象的屬性或方法,可以在模型類中封裝方法,訪問關聯對象的成員。

(a)例如:顯示父級地區,如果沒有父級就返回空

技術分享圖片

效果:

技術分享圖片

(6)分組顯示:fields與fieldsets只能用一個

技術分享圖片

效果:

技術分享圖片

(7)關聯對象

在一對多的關系中,可以在一端的編輯頁面中編輯多端的對象,嵌入多端對象的方式包括表格、塊兩種。類型InlineModelAdmin:表示在模型的編輯頁面嵌入關聯模型的編輯。子類TabularInline:以表格的形式嵌入。子類StackedInline:以塊的形式嵌入

(a)StackedInline,寫入models.py的AreaInfo,在管理類寫入Inlines = [AreaStackedInline] #類名,extra = 2 表示額外添加兩個空行

技術分享圖片

效果:

技術分享圖片

(8)重寫模板

技術分享圖片

(9)上傳圖片

(a)配置方式
技術分享圖片

(b)後臺管理頁面上傳圖片

技術分享圖片

(c)模型類屬性
技術分享圖片

(d)設計模型類

技術分享圖片

(e)遷移模型類出錯,因為已經存在id=10的表,系統不再遷移

技術分享圖片

方法一:把id=10的表刪除

技術分享圖片

遷移後還是有錯誤:到0001initial.py把該類刪了

技術分享圖片

(f)到admin.py註冊模型類

技術分享圖片

(g)效果

技術分享圖片

(h)用戶自定義頁面上傳圖片

技術分享圖片

(I)頁面

技術分享圖片

(j)處理函數:小於2.5M存儲在內存,大於2.5M存儲在臨時文件,%s表示文件名,‘wb‘文件格式,Pictest表

技術分享圖片
技術分享圖片

Django Admin後臺管理