Python 在Django管理更改/添加页面中显示ForeignKey数据

Python 在Django管理更改/添加页面中显示ForeignKey数据,python,django,django-models,django-admin,Python,Django,Django Models,Django Admin,我正在尝试获取一个模型的属性,以显示在另一个模型的Django admin change/add页面中。以下是我的模型: class Download(model.Model): task = models.ForeignKey('Task') class Task(model.Model): added_at = models.DateTimeField(...) 无法切换foreignkey,因此我无法使用内联,当然fields=('task\uu added\u at'

我正在尝试获取一个模型的属性,以显示在另一个模型的Django admin change/add页面中。以下是我的模型:

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

class Task(model.Model):
    added_at = models.DateTimeField(...)
无法切换foreignkey,因此我无法使用内联,当然
fields=('task\uu added\u at')
在这里也不起作用

这类事情的标准方法是什么?(还是我把管理员的工作做得太过分了?)


我已经在使用自定义模板,所以如果这是可以完成的答案。但是,我更愿意在管理员级别执行此操作。

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

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

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

能否请您提供一些关于您试图在admin中实现的工作流的更多上下文?从您的帖子中,听起来您正在编辑下载,并且需要访问任务模型,对吗?用户请求下载,该下载由延迟任务生成并通过电子邮件发送给他们(我在Windows上,所以没有celeryd,更遗憾的是)好,那么你需要如何处理外键字段呢?显示
下载.task.added\u于
@BrianHicks完成了吗?那不行,因为只读字段必须是字段的子集,我不能向字段添加函数。我不知道你的意思。这确实有效-请参见。也适用于字段集。荣誉