Displaying ForeignKey data in Django admin change/add page(在 Django 管理更改/添加页面中显示 ForeignKey 数据)
问题描述
我正在尝试让模型的属性显示在另一个模型的 Django 管理更改/添加页面中.这是我的模型:
I'm trying to get an attribute of a model to show up in the Django admin change/add page of another model. Here are my models:
class Download(model.Model):
task = models.ForeignKey('Task')
class Task(model.Model):
added_at = models.DateTimeField(...)
不能切换外键,所以我不能使用内联,当然 fields = ('task__added_at',) 在这里也不起作用.
Can't switch the foreignkey around, so I can't use Inlines, and of course fields = ('task__added_at',) doesn't work here either.
这样的标准方法是什么?(还是我把 Admin 拉得太远了?)
What's the standard approach to something like this? (or am I stretching the Admin too far?)
我已经在使用自定义模板,所以如果这是可以做到的答案.但是,我更愿意在管理员级别执行此操作.
I'm already using a custom template, so if that's the answer that can be done. However, I'd prefer to do this at the admin level.
推荐答案
如果不需要编辑,可以显示为只读字段:
If you don't need to edit it, you can display it as a readonly field:
class DownloadAdmin(admin.ModelAdmin):
readonly_fields = ('task_added_at',)
def task_added_at(self, obj):
return obj.task.added_at
这篇关于在 Django 管理更改/添加页面中显示 ForeignKey 数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 Django 管理更改/添加页面中显示 ForeignKey 数据
基础教程推荐
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
