对于这个特定的管理页面,我想将“当前值”(用红色圆圈标出)变成一个链接,该链接可以返回到该特定对象的管理页面。
但我找不到去哪里做这个改变。我知道我需要以某种方式覆盖它的显示方式,但我无法弄清楚。
我需要重写什么来做我想做的事?
管理模型定义:
class FirmwareConfigElementsChoiceInline(admin.TabularInline):
model = FirmwareConfigElements
extra = 1
class FirmwareConfigAdmin(admin.ModelAdmin):
save_as = True
list_display = ('name', 'description')
inlines = [FirmwareConfigElementsChoiceInline]
使用 Filip 的巨大帮助,我得到了这个:
class FirmwareConfigElementsForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
klass = FirmwareConfigElementsForm
super(klass, self).__init__(*args, **kwargs)
if self.instance.type == 'incfw':
value = self.instance.value
url = '#' # TODO: get the URL for the value
hyperlink = '<a href="%s">%s</a>' % (url, value)
label = self.fields['type'].label.replace(value, hyperlink)
self.fields['type'].label = label
但在上面的代码self.fields['type'].label
中,内容Type
并不Include another FW Config - BASE:IBM-HS22/HS22V
像我预期的那样。
我已经在调试器中对其进行了探索,但我无法弄清楚如何获得我想要更改的特定标签。