この特定の管理ページでは、「現在の値」(赤い円で囲まれている) を、この特定のオブジェクトの管理ページに戻るリンクに変えたいと思います。
しかし、この変更を行う場所が見つかりません。これがどのように表示されるかをどうにかしてオーバーライドする必要があることは知っていますが、わかりません。
やりたいことをするために何をオーバーライドする必要がありますか?
管理モデルの定義:
class FirmwareConfigElementsChoiceInline(admin.TabularInline):
model = FirmwareConfigElements
extra = 1
class FirmwareConfigAdmin(admin.ModelAdmin):
save_as = True
list_display = ('name', 'description')
inlines = [FirmwareConfigElementsChoiceInline]
フィリップの大きな助けを借りて、私はこれにたどり着きました:
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
デバッガーで調べましたが、変更したい特定のラベルに到達する方法がわかりません。