1. 自定义样式类,显示出要显示的字段,在这个类中,也可以设置对应函数。 list_display=[check,"title",delete]
2.在 Modelxadmin中设置:list_display=["__str__"]
设置Modelxadmin的静态属性,即当注册的对象没使用样式类时,使用Modelxadmin的样式属性
3.处理表头
display中的函数名或者变量名作为表头
1.需要判断传的列表中的内容是函数名还是字符串
2.如果是字符串,判断是"__str__"还是其他的
3.让相应的字符串表头显示对应的中文,取到字段对象,引用字段中的verbose_name
4.处理表单数据
需要判断传的列表中的内容是函数名还是字符串
1.若是函数名,去执行对应的函数,取到对应的值
2.若是变量,利用反射到相应的数据中取到值

2.设定样式类list_display

from Xadmin.service.Xadmin import site,Modelxadmin
from app01 import models
from django.utils.safestring import  mark_safe
class BookConfig(Modelxadmin):
    href=change/'%s/'自动在当前路径后拼接路径
    def edit(self, obj=None,  is_header=False):
        if is_header:  # 此时作表头处理
            return "操作"
        return mark_safe("<a href='change/%s/'>编辑</a>"%obj.pk)
    def delete(self, obj=None, is_header=False):
        if is_header:  # 此时作表头处理
            return "删除"
        return mark_safe("<a href='del/%s/'>删除</a>" % obj.pk)
    def check(self, obj=None, is_header=False):
        if is_header:  # 此时作表头处理
            return "选择"
        return mark_safe("<input type='checkbox'>")
    list_display=[check,"title","price","publish","authors",edit,delete]
site.register(models.Book,BookConfig)
View Code

相关文章: