我想知道是否有可能以干净的方式在ModelAdmin中打印外键链:
图片我们有这个结构:
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')
现在使用ModelAdmin:
编辑:(这是无效的)
class McAdmin(admin.ModelAdmin):
list_display = ('name', 'fc__fb__fa',)
或者我该如何解决这个问题?
答案 0 :(得分:5)
请参阅this回答:
您可以在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