Wie rufe ich eine Modellmethode in Django ModelAdmin-Feldern auf?
Ich möchte eine eingebettete Karte in einem Admin-Formular anzeigen, wenn Daten bereits in der Datenbank vorhanden sind. Ich habe folgenden Code:
models.py
class Address(models.Model):
address = models.CharField()
def address_2_html(self):
if self.address:
# Return html for an embedded map using the entered address.
return embedded_map_html
else:
return ''
address_2_html.allow_tags = True
admin.py
class AddressAdmin(admin.ModelAdmin):
fieldsets = [(label, {'fields': ['address','address_2_html']}),]
Das geht nicht. Ich erhalte einen Fehler:
'AddressAdmin.fieldsets[1][1]['fields']' refers to field 'address_2_html' that is missing from the form.
Ich habe auch versucht, die Option "description" für "fieldsets" zu verwenden. Auf "address_2_html" kann jedoch im Rahmen von AddressAdmin nicht zugegriffen werden. Es ist mir gelungen, eine statische Karte mit 'description' einzubetten, die zwar cool, aber nicht cool genug war.