Django框架文件解析--admin.py
from django.contrib import admin ''' 从django的contrib版本中调用admin包, contrib 贡献,供给 . 该包主要包含admin等自动化站点管理工具. ''' from booktest.models import BookInfo,PicTest,Area ''' 需要在admin后台中显示哪些数据, 则相应从models中导入对应模型类用以调用数据 ''' # Register your models here. class BookInfoAdmin(admin.ModelAdmin): '''图书模型admin管理类''' list_per_page = 10 # 指定每页显示多少条信息 list_display = ['btitle', 'bpublish', 'title'] # list_display中不仅可以写模型类的属性, 也可以写模型类的方法 # 指定下拉列表框的位置以及存在与否 actions_on_top = False # 上面的下拉列表开关设置 actions_on_bottom = True # 下面的下拉列表开关设置 list_filter = ['btitle'] # 列表过滤栏设置指定过滤的['属性'] search_fields = ['btitle'] # 搜索栏设置指定搜索属性['属性'] # search_fields = True # 搜索框的开关设置 # fields = ['bpublish', 'btitle'] # fields 修改每个objects在admin中属性的排列顺序 fieldsets = ( # fieldsets 设置组, 在组内放入属性分类. ('基本',{'fields':['btitle']}), ('高级',{'fields':['bpublish']}) ) # ## fields 和 fieldsets 两个通常情况下只选择一个使用. # 嵌套和关联子对象, 父对象,的时候, 不论使用块嵌套还是表格嵌套. # 1. 创建嵌套对象, 声明嵌套类型以及额外编辑数量: # class BookStackedInline(admin.StackedInline): # model = AreaInfo # 关联子对象 # extra = 2 # 额外编辑2个子对象 # 2. 然后在需要关联的相关Admin类后增加 inline = [上方定义的关联类] : # inlines = [BookStackedInline] class AreaAdmin(admin.ModelAdmin): list_display = ['areaName', 'aParent'] # ''' # 自定义admin自动化管理工具, 要改写admin中的ModelAdmin(模型_管理)的参数. # 修改列表显示, 则更改list_display中的列表内容. # ''' admin.site.register(BookInfo,BookInfoAdmin) admin.site.register(PicTest) admin.site.register(Area,AreaAdmin) # ''' # 用admin包内的site站点模块, 使用register注册方法, 注册从模型中导入的模型类(单个). # # admin.site.register(BookInfo,HeroInfo) # 不可同时传入两个参数, 避免后续自定义显示出错 # TypeError: check() takes 1 positional argument but 2 were given # # '''