django admin是django自带的一个后台app,提供了后台的管理功能
基础知识点:
一、认识ModelAdmin
管理界面的定制类,如需扩展特定的model界面需要从该类继承
二、注册model类到admin的两种方式:
1、使用register的方法
from django.contrib import admin
from hello.models import *
# Register your models here.
#定义一个出版商管理类PublisherAdmin,然后继承admin.ModelAdmin,最后将定义的出版商管理类注册到admin.site.register中
class PublisherAdmin(admin.ModelAdmin):
list_display = (‘name‘,‘country‘,‘state_province‘,‘city‘,)
admin.site.register(Author)
admin.site.register(AuthorDetail)
admin.site.register(Book)
admin.site.register(Publisher,PublisherAdmin)
2、使用register的装饰器
from django.contrib import admin
from hello.models import *
# Register your models here.
@admin.register(Publisher) #通过装饰器将定义的出版商类Publisher注册到admin.register中,同时注释掉#admin.site.register(Publisher,PublisherAdmin)
class PublisherAdmin(admin.ModelAdmin):
list_display = (‘name‘,‘country‘,‘state_province‘,‘city‘,)
admin.site.register(Author)
admin.site.register(AuthorDetail)
admin.site.register(Book)
#admin.site.register(Publisher,PublisherAdmin)
方法1和2效果一样。
三、掌握一些常用的设置技巧
list_display:指定要显示的字段
search_fields:指定搜索的字段
list_filter:指定列表过滤器
ordering:指定排序字段
fields\exclude:指定编辑表单需要编辑\不需要编辑的字段
fieldsets:设置分组表单
更多高级使用的功能将在《Django进阶》课程里介绍,另外,值得注意的是,django admin更适合开发人员来使用,最终用户来使用的话用户体验还不是很好
https://docs.djangoproject.com/en/1.9/ref/contrib/admin