通過使用startproject建立的專案模版中,預設admin被啟用
1.建立管理員的使用者名稱和密碼
python manage.py createsuperuser
然後按提示填寫使用者名稱、郵箱、密碼
2.在應用內admin.py檔案完成註冊,就可以在後台管理中維護模型的資料
modeladmin類是模型在admin介面中的表示形式from django.contrib import admin
from models import
*admin.site.register(heroinfo)
定義:定義乙個類,繼承於admin.modeladmin,註冊模型時使用這個類
通常定義在應用的admin.py檔案裡class
heroadmin
(admin.modeladmin):.
..
使用方式一:註冊引數
admin.site.register(heroinfo,heroadmin)
使用方式二:註冊裝飾器
通過重寫admin.modeladmin的屬性規定顯示效果,屬性主要分為列表頁、增加修改頁兩部分@admin.register(heroinfo)
class
heroadmin
(admin.modeladmin)
:
2.1 列表頁選項
「操作選項」的位置
actions_on_top、actions_on_bottom:預設顯示在頁面的頂部
list_displayclass
heroadmin
(admin.modeladmin)
: actions_on_top =
true
actions_on_bottom =
true
在models.py檔案中
from django.db import models
from tinymce.models import htmlfield
from django.utils.html import format_html
class
heroinfo
(models.model)
: hname = models.charfield(max_length=10)
hcontent = htmlfield(
) isdelete = models.booleanfield(
)def
hcontent
(self)
:return format_html(self.hcontent)
在admin.py檔案中
class
heroadmin
(admin.modeladmin)
: list_display =
['hname'
,'hcontent'
]
在models.py中heroinfo類的**改為如下:
defhcontent
(self)
:return format_html(self.hcontent)
hcontent.admin_order_field =
'hname'
list_filter在models.py中為heroinfo類增加方法hname:
defhname
(self)
:return self.hname
hname.short_description =
'姓名'
hcontent.short_description =
'內容'
在admin.py頁中註冊
class
heroadmin
(admin.modeladmin)
: list_display =
['hname'
,'hcontent'
]
list_per_pageclass
heroadmin
(admin.modeladmin):.
..list_filter =
['hname'
,'hcontent'
]
每頁中顯示多少項,預設設定為100
search_fieldsclass
heroadmin
(admin.modeladmin):.
..list_per_page =
10
2.2 增加與修改頁選項class
heroadmin
(admin.modeladmin):.
..search_fields =
['hname'
]
fields:顯示欄位的順序,如果使用元組表示顯示到一行上
fieldsets:分組顯示class
heroadmin
(admin.modeladmin):.
..fields =[(
'hname'
,'hcontent'
)]
fields與fieldsets兩者選一class
heroadmin
(admin.modeladmin):.
..fieldsets =((
'base',)
,('other',)
)
class
heroinline
(admin.tabularinline)
: model = heroinfo
class
bookadmin
(admin.modeladmin)
: inlines =
[ heroinline,
]
'dirs'
:[os.path.join(base_dir,
'templates')]
,
django新增admin管理
admin 也是乙個 跟我們建立的 沒什麼兩樣,只不過它是系統所有的。如果要使用的話,按下面的步驟就可以了。1.在settings.py 的元組裡新增一行 django.contrib.admin 每次新增新應用後,都要執行一下 syncdb 建立資料表。但是我們還要用 admin 來管理其他應用 ...
Django學習筆記《admin》
主要內容有 自定義表單的域 polls admin.py from django.contrib import admin from models import question class questionadmin admin.modeladmin fields pub date questio...
django給admin增加功能
1.django project路徑 d studio django web mybase d studio django web mybase beta 步驟 a.從標準模板庫中拷貝至當前project下template子目錄 注意admin beta 檢視該模板發現逐級擴充套件多個html模板,...