您的位置:首页 > 编程语言 > Python开发

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

2018-02-23 10:52 811 查看
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'] #通过时间搜索外键或多对多加__双下划线对应的字段名
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: