【发布时间】:2018-12-10 10:54:05
【问题描述】:
我有一个用于电子邮件模板的 Django 管理站点。 这些电子邮件模板有一个 ContentType ForeignKey 字段。此字段显示在管理员更改视图中。
型号:(非相关代码不显示)
class EmailTemplate(models.Model):
name = models.CharField(verbose_name=_('Name'), max_length=200, unique=True)
content_type = models.ForeignKey(ContentType, verbose_name=_('Content Type'))
admin.py:(非相关代码不显示)
class EmailTemplateAdmin(admin.ModelAdmin):
form = EmailTemplateForm
list_display = ('name',)
fieldsets = (
(None, {
'classes': ('monospace',),
'fields': ('name','content_type',)
}),
)
我现在想自定义字段“content_type”。现在它只是显示ContentType,我想给它添加相应的“app_label”(我们有很多应用程序,遗憾的是,一些模型存在于多个应用程序中(所以名称显示两次,无法区分)。这是相当旧的代码库,并且不可能将所有模型重命名为在应用程序之间是唯一的。
简而言之:
如何更改我的 content_types 字段以显示如下:“[Content_type][Content_type.app_label]
【问题讨论】:
标签: python django django-models django-admin