前言
今天學習一下列表優化和排序
ModelAdmin
django的options.py里面 ModelAdmin類定義的參數可以設置admin后台列表頁面,相關的參數如下
排序字段
后台列表頁面,如果想按某個字段排序,可以加個ordering參數
刷新頁面后,就是降序了
列表分頁
列表頁默認是設置的100個記錄,我們也可以修改下設置成默認每頁顯示10個,設置list_per_page = 5
刷新頁面
設置默認可編輯字段
有些字段如果想在列表頁就能直接編輯,可以加個list_editable參數,這樣無需進子頁面,可以直接編輯列表頁上的字段
如果有多個參數設置,里面逗號隔開就行,如 list_editable = ('name', 'age', )
刷新下頁面
注意:title是默認的link鏈接字段,這個不能添加到 list_editable里面,否則會報錯
link鏈接
列表頁默認點第一個字段可進入編輯頁面,如果我們想增加其它的字段也能點擊進編輯頁面,設置list_display_links = ('title', 'body','author')
刷新頁面,標題,頁面和內容點擊可進入可編輯頁面。
過濾器
如果想快速方便找到作者對應的文字,可以添加過濾器,顯示到列表頁面右邊,如設置list_filter = ('author', 'title')
刷新admin后台管理頁面
顯示效果如下,點右側作者,內容名稱,快速找到相關內容
按時間分層
date_hierarchy參數默認為None,設置一個時間字段,可以按時間分層刪選
根據時間篩選表格