创建后台管理员: python3 manage.py createsuperuser 在admin.py文件中注册要管理的实体类: admin.site.register(Author) 重写实体类的str方法(后台显示):
class Author ( models. Model) :
. . . . . .
def __str__ ( self) :
return self. name
高级管理 1.声明并注册高级管理类
class EntryAdmin ( admin. ModelAdmin) :
pass
admin. site. register( Entry, EntryAdmin)
2.在EntryAdmin中实现的高级管理功能,属性值为元组或列表
1.list_display 列表页中要显示的字段
2.list_display_links 列表页中可以链接到详情页的字段
3.list_editable 列表页中可以直接修改的字段
4.list_filter 列表页右侧增加一个过滤筛选
5.search_field 列表页上方允许模糊查询的字段
6.date_hierarchy 列表页中增加一个时间过滤功能
7.fields 详情页中显示的字段及顺序
8.fieldsets 详情页中对字段进行分组,与fields属性互斥
示例
from django. contrib import admin
from . models import *
class AuthorAdmin ( admin. ModelAdmin) :
list_display = ( 'name' , 'age' , 'email' )
list_display_links = ( 'name' , 'email' )
list_editable = ( 'age' , )
list_filter = ( 'isActive' , )
search_fields = ( 'name' , 'email' )
fieldsets = (
( '基本选项' , { 'fields' : ( 'name' , 'email' ) } ) ,
( '可选选项' , {
'fields' : ( 'age' , 'isActive' ) ,
'classes' : ( 'collapse' , )
} ) ,
)
class BookAdmin ( admin. ModelAdmin) :
date_hierarchy = 'publicate_date'
class PublisherAdmin ( admin. ModelAdmin) :
list_display = ( 'name' , 'address' , 'city' )
list_editable = ( 'address' , 'city' )
list_filter = ( 'city' , )
search_fields = ( 'name' , 'website' )
fieldsets = (
( '基本信息' , { 'fields' : ( 'name' , 'address' , 'city' ) } ) ,
( '高级信息' , { 'fields' : ( 'country' , 'website' ) ,
'classes' : ( 'collapse' , ) } )
)
admin. site. register( Author, AuthorAdmin)
admin. site. register( Publisher, PublisherAdmin)
admin. site. register( Book, BookAdmin)