ModelAdmin,外键关系链

Ric*_*son 3 django modeladmin

我想知道是否有可能以干净的方式在ModelAdmin中打印foreignkey链:

图像我们有这个结构:

class Ma(models.Model):
      fa = models.EmailField()

class Mb(models.Model):
      fb = models.ForeignKey('Ma')

class Mc(models.Model):
      name = models.CharField(max_length=50)
      fc = models.ForeignKey('Mb')
Run Code Online (Sandbox Code Playgroud)

现在使用ModelAdmin:

编辑:(这是无效的)

class McAdmin(admin.ModelAdmin):
     list_display = ('name', 'fc__fb__fa',)
Run Code Online (Sandbox Code Playgroud)

或者我该如何解决这个问题?

Den*_*1.5 6

看到这个答案:

您可以在McAdmin类上创建一个返回这些嵌套外键值的方法:

class McAdmin(admin.modelAdmin):
    list_display = ('name', 'get_email_foreign_foreign_key')

    def get_email_foreign_foreign_key(self, obj):
        return '%s' % obj.fc.fb.fa
Run Code Online (Sandbox Code Playgroud)