crm--01
需求:
将课程名称与班级综合起来
class ClassListConfig(ModelSatrk): # 自定义显示方式 def display_class(self,obj=None,is_header=False): if is_header: return "班级" return "%s(%s)"%(obj.course,obj.semester) list_display = ["school",display_class,"teachers","tutor"] site.register(ClassList,ClassListConfig)
需求2;在choice类型字段将男女渲染到页面
代码:
class Customer(models.Model): """ 客户表 """ qq = models.CharField(verbose_name='qq', max_length=64, unique=True, help_text='QQ号必须唯一') name = models.CharField(verbose_name='学生姓名', max_length=16) gender_choices = ((1, '男'), (2, '女')) gender = models.SmallIntegerField(verbose_name='性别', choices=gender_choices)
# 解决方法: # 记住点display是固定的后面接操作的字段名 # 添加参数 # return的get_display是固定的,要将操作字段添加到中间 class CustomerConfig(ModelSatrk): # 自己定义方法注意:添加参数(obj=None,is_header=False) def display_gender(self,obj=None,is_header=False): if is_header: # 标头 return "性别" return obj.get_gender_display() list_display = ["name",display_gender,"gender"] site.register(Customer,CustomerConfig)