使用后台管理Models
1、后台配置
登录地址:http://localhost:/8000/admin
创建后台管理员:
./manage.py createsuperuser
Username:输入用户名,默认为terana
Email Adress:电子邮件
Password:密码
Password(again):重复密码
2、基本管理
1、在应用中的admin.py中注册要管理的实体类
1、admin.py
作用:注册需要管理的models,只有在此注册的models才允许被管理
2、注册models
from.models import *
admin.site.register(Entry)
2、修改models.py处理显示内容
1、在models.py中为各个class追加
def __str__(self):
return self.属性名
2、通过Models类的内部类Meta定义各个类的展现形式
class Author(models.Model):
...
class Meta:
1、db_table
指定该实体类对应到的表的名称
2、verbose_name
定义当前实体类在后台管理的列表中的名称(单数形式)
3、verbose_name_plural
效果同上,是复数形式
4、ordering
指定实体数据列表页中的排序规则,取值是一个列表,默认按升序排序,降序则要手动添加负号
3、高级管理
1、在admin.py中创建高级管理类
1、定义EntryAdmin,继承自admin.ModelAdmin
class AuthorAdmin(admin.ModelAdmin)
pass
2、注册高级管理类
admin.site.register(Entry,EntryAdmin)
admin.site.register(Author,AuthorAdmin)
2、定制高级管理信息
1、list_display
作用:指定在列表页中能够显示的字段
取值:由属性名称组成的元组或列表
ex:
list_display=['names','age','email']
2、list_display_links
作用:指定在列表页中也能链接到详情页的字段们
取值:由属性名称组成的元组或列表
注意:取值必须出现在list_display的取值中
3、list_editable
作用:指定在列表页中就允许被编辑的文字们
取值:由属性名称组成的元素或列表
注意:取值不能出现在list_display_links,但必须出现在list_display中
4、search_fields
作用:添加允许被搜索的字段们
取值:由属性名称组成的元组或列表
5、list_filter
作用:在列表的右侧增加过滤器实现快速筛选
取值:由属性名称组成的元组或列表
6、date_hierarchy
作用:在列表页的顶端增加一个时间选择器
取值必须是DateField或DateTimeFiled的值
7、fields
在详情页面中。指定显示哪些字段并按照什么样的顺序显示
取值:由属性名称组成的元组或列表
8、fieldsets
作用:在详情页中,对字段们进行分组显示
注意:fields与fieldsets不能共存
语法:
fieldsets=(
#分组1
(
‘分组名称’,{
‘fields’:('属性1',‘属性2’)
‘classes’:('collapse',),
}
),
#分组2
()
)