xadmin 显示外键字段

  1. 如果需要显示在list_display中则需要对外键的model进行修改, 然后list_display中填字段名就好
    • 例:
    #models.py
    class A(models.Model):
        ...
        name = models.CharField(max_length=100, verbose_name='用户名', default='')
        def __str__(self):
            return self.name
            # 这个地方需要注意下, __str__ return 的只能是str类型的数据, 不要返回其他类型的, 不然容易报错
    
    class B(models.Model):
        a = models.ForeignKey(A, models.DO_NOTHING, default='')
    
    
    #adminx.py
    class BAdmin(object):
        list_display = ['a', ]
    
    
  2. 如果在search_fields, list_filter 显示直接使用字段名__外键字段名
    list_filter = ['a__name']
    search_fields = ['a__name']
    
原文地址:https://www.cnblogs.com/edhg/p/11158450.html