python - 如何在 PARENT 管理页面上显示 ForeignKey 模型的下拉列表
问题描述
似乎无法弄清楚这一点。我有一个模型 - Show 和 Episode,它与 Show 具有 ForiegnKey 关系。在显示管理页面上,我想要一个所有剧集的下拉显示,它将链接到他们的管理模型页面......我唯一能得到的是一个折叠的表单作为只读。我喜欢这个指向管理页面的链接,但我只希望它在下拉列表中。
***models.py***
class Show(models.Model):
title = models.CharField(_("title"), null=True, max_length=5000)
slug = models.SlugField(_("slug"), max_length=5000, unique=True)
class Episode(models.Model):
show = models.ForeignKey(Show, verbose_name=_("show"), on_delete=models.CASCADE)
title = models.CharField(_("title"), null=True, max_length=5000)
***admin.py***
class ShowAdmin(admin.ModelAdmin):
list_display = ('title', 'get_latest_duration', 'get_latest_pub_date',)
inlines = [
EpisodeInline,
]
class EpisodeInline(admin.StackedInline):
model = Episode
fieldsets = (
('Episodes', {
'classes': ('collapse',),
'fields': ('title',),
}),)
解决方案
您可以使用只读字段。这是一个例子:
from django.contrib import admin
class ShowAdmin(admin.ModelAdmin):
readonly_fields = ('episode_list',)
def episode_list(self, instance):
# you may render a html list here with episode names
return ",".join([x.name for x in instance.episodes]) # replace episodes with your model's related name
推荐阅读
- java - 如何在每个屏幕上禁用 android 后退按钮?
- flutter - 去除颤动的TextField标签文本背景颜色
- reason - 如何在 Reason React 中使用模数运算符?
- python - 为什么从 flow_from_directory 张量流中得到一个空序列?
- powershell - 在 Powershell 中加入两个数据表?
- python - 在每次迭代中,我都在“重新定义/重新分配”或恢复一个变量,这会占用额外的空间吗?
- php - Ngnix + Apache/php-frm 502 网关错误
- android - 我想使用 highchart 在 android 的 stackbar 图表中显示 0% 的数据而没有一列
- ios - 关闭顶层 VC 时不调用 ViewWillAppear
- java - 2.2.6 中缺少 HfileOutputFormat2.java,当我将 hbase lib 从 0.98.6 升级到 2.2.6 时,这个类的替代方案是什么?