django - ModelAdmin、外键关系链

标签 django modeladmin

我想知道是否可以在 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',)

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

最佳答案

参见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

关于django - ModelAdmin、外键关系链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13989345/

相关文章:

django - "The path python3 (from --python=python3) does not exist"错误

python - Django:创建自定义模板标签 -> ImportError

php - 在带有枚举的 DataObject 的 ModelAdmin 过滤器中使用脚手架列表框进行多项选择

python - Django ModelAdmin 中的 "list_display"可以显示 ForeignKey 字段的属性吗?

python - 如何在 ModelAdmin 中动态操作 Django 中的表单字段?

wagtail - 在 wagtail 管理中添加子菜单

php - Silverstripe 3.2 - 如何在不同选项卡的 ModelAdmin 中管理相同数据对象的不同列表

python - Django Channels 停止使用 self.receive_lock.locked 错误

javascript - 尝试使用 Angular 将部分内容加载到我的 django 模板一侧

python - Django 在 Amazon Elastic Beanstalk 上的迁移命令被杀死