在Django admin更改/添加页面中显示ForeignKey数据

时间:2011-04-14 14:54:39

标签: python django django-models django-admin

我正在尝试获取模型的属性以显示在另一个模型的Django管理员更改/添加页面中。这是我的模特:

class Download(model.Model):
    task = models.ForeignKey('Task')

class Task(model.Model):
    added_at = models.DateTimeField(...)

无法切换外键,因此我无法使用内联,当然fields = ('task__added_at',)在这里也不起作用。

这样的标准方法是什么? (或者我是否将管理员拉得太远了?)

我已经在使用自定义模板了,所以如果这是可以做到的答案。但是,我更愿意在管理员级别这样做。

1 个答案:

答案 0 :(得分:11)

如果您不需要编辑它,可以将其显示为只读字段:

class DownloadAdmin(admin.ModelAdmin):
    readonly_fields = ('task_added_at',)

    def task_added_at(self, obj):
        return obj.task.added_at