• django admin 或xdmin list_display search_fields list_filter 如果显示搜索外键或多对多字段


    model

    class UserProfile(AbstractUser):
    
        nick_name = models.CharField(max_length=50, verbose_name=u"昵称", default="")
        gender = models.CharField(max_length=6, choices=(("male",u""),("female","")), default="female")
        address = models.CharField(max_length=100, default=u"")
        mobile = models.CharField(max_length=11, null=True, blank=True)
        add_time = models.DateTimeField(auto_now=True)
    
    
        class Meta:
            verbose_name = "用户信息"
            verbose_name_plural = verbose_name
    class Project(models.Model):
        project_name = models.CharField(max_length=200, verbose_name="项目名称", default="")
        project_number = models.CharField(max_length=200,verbose_name="项目编号", default="")
        project_user = models.ForeignKey(UserProfile,verbose_name='项目负责人')
        add_time = models.DateTimeField(auto_now=True)
    
        class Meta:
            verbose_name = "项目信息"
            verbose_name_plural = verbose_name
    
    
    class Center(models.Model):
        center_name = models.CharField(max_length=200, verbose_name="中心名称", default="")
        center_number = models.CharField(max_length=200,verbose_name="中心编号", default="")
        center_user = models.ManyToManyField(UserProfile, verbose_name='中心负责人')
        add_time = models.DateTimeField(auto_now=True)
    
        class Meta:
            verbose_name = "中心信息"
            verbose_name_plural = verbose_name

    admin或xadmin的展示

    class CenterAdmin(object):
        """
        中心列表
        """
    
        list_display = ['id','center_name','center_number','center_user']  #后台自定义显示列
    
        search_fields = ['id','center_name','center_number','center_user__username'] #定义后台搜索 外键或多对多加__双下划线对应的字段名
    
        list_filter = ['id','center_name','center_number','center_user__username'] #通过时间搜索外键或多对多加__双下划线对应的字段名
    
    
    class PatientAdmin(object):
        """
        患者列表
        """
    
        list_display = ['id','patient_number','patient_user']  #后台自定义显示列
    
        search_fields = ['id','patient_number','patient_user__username'] #定义后台搜索 外键或多对多加__双下划线对应的字段名索
    
        list_filter = ['id','patient_number','patient_user__username'] #通过时间搜索外键或多对多加__双下划线对应的字段名
  • 相关阅读:
    IOS开发mapkit学习笔记
    IOS的两种框架设计思想
    关于创建及使用多线程的几种方法
    Linux基础入门 之挑战:历史命令
    20172018网络攻防第三周
    20172018网络攻防第二周
    Linux基础入门实验楼挑战之数据提取
    iconfont字体图标的使用方法超简单!
    CSS中的绝对定位(absolute)误区
    获取对象属性的点方法和中括号法的区别
  • 原文地址:https://www.cnblogs.com/zhaoyingjie/p/8461162.html
Copyright © 2020-2023  润新知