Django Admin TabularInline - gibt es eine gute Möglichkeit, eine benutzerdefinierte HTML-Spalte hinzuzufügen?

7

Ich habe ein Modell ( Entry ), das eine einfache Eigenschaft enthält:

%Vor%

Ich verwende dies, um den Namen einer bestimmten Image-Datei auf der Festplatte zu erstellen. Also ich weiß, dass es ein Bild bei /path/to/images/(model.image()).jpg

geben wird

Ich kann die rohe Bildeigenschaft selbst im TabularInline-Layout auf einer Verwaltungsseite anzeigen, indem ich sie der readonly_fields-Sammlung hinzufüge. Aber wie würde ich eine Spalte mit benutzerdefiniertem HTML um die Modelleigenschaft herum erstellen?

z.B.

%Vor%     
growse 09.03.2011, 16:49
quelle

4 Antworten

11

Sie können eine Methode in Ihrer Unterklasse TabularInline erstellen, die den gewünschten HTML-Code zurückgibt, und dann den Namen dieser Methode anstelle von image in ImageInline . fields :

verwenden %Vor%     
gladysbixly 18.03.2011, 17:57
quelle
15

Laut aktuellem Django 1.2+ habe ich Fehler bekommen "Form hat kein Feld wie render_image". Lösung ist einfach setzen Sie die render_image-Funktion in model.Admin nicht in Ihrem Inline-Formular, zweite Sache ist Felder und readonly_fields Einstellungen in Ihrem Inline-Formular ... Also hier haben Sie, was ich am Ende bin:

%Vor%     
lechup 28.03.2011 12:01
quelle
0

@lechup richtig, außer Sie brauchen:

%Vor%

in Inline für spätere Versionen von django (+1.4)

definiert     
Niall Farrington 14.06.2017 14:44
quelle
0

Lechups Antwort funktioniert bei mir nicht, ich benutze Django 1.11.7. Ich habe diesen Weg gefunden, um zu arbeiten.

Sagen wir, ich habe 2 Tabellen: Kampagne und Artikel , eine Kampagne hat viele Artikel. Ich möchte die Artikel beim Durchsuchen einer bestimmten Kampagne anzeigen.

Table Article hat eine Spalte namens score , die ein Float ist. Ich möchte es bei der Anzeige in Django admin auf 2 Dezimalstellen runden.

Dieses Beispiel zeigt, wie Sie eine benutzerdefinierte Spalte für TabularInline in Django admin erstellen können.

%Vor%     
Quan 01.12.2017 03:08
quelle

Tags und Links