上一章我们的进度到了管理员界面中,成功创建了管理员,然后在 booktes/admin/py 中导入了我们创建的模型类,就可以在浏览器中查看到我们定义的模型类和它的实例们。以 ClassInfo 为例:
此处展示的界面是系统默认的展示界面。我们可以自己定义管理界面,需要创建一个类,继承自 admin.ModelAdmin。把创建的类写进去 booktest/admin.py 里面,并在注册模型类的时候一并传入。刷新之后可以看到管理页面发生了变化,我们在创建"模型管理器 ModelAdmin" 时定义的 list_display 就是管理界面中表显示出来的字段。
from django.contrib import admin
from .models import ClassInfo, StudentInfo
class ClassInfoAdmin(admin.ModelAdmin):
list_display = ['id', 'classid', 'teacher']
# Register your models here.
admin.site.register(ClassInfo, ClassInfoAdmin)
admin.site.register(StudentInfo)
设置 list_filter 来控制显示将会显示在右方的过滤字段。更新我们的 booktest/admin.py,刷新浏览器页面就可以看到右侧多了一个 Filter 的空间,可以显示我们这个模型类中的概况,把各个实例的某个属性值都打印出来。
from django.contrib import admin
from .models import ClassInfo, StudentInfo
class ClassInfoAdmin(admin.ModelAdmin):
list_display = ['id', 'classid', 'teacher']
# 添加过滤字段
list_filter = ['classid']
# Register your models here.
admin.site.register(ClassInfo, ClassInfoAdmin)
admin.site.register(StudentInfo)