Wie erstelle ich ein Django-Formular, das rechts neben dem Kontrollkästchen eine Kontrollkästchenbezeichnung anzeigt?Python

Python-Programme
Anonymous
 Wie erstelle ich ein Django-Formular, das rechts neben dem Kontrollkästchen eine Kontrollkästchenbezeichnung anzeigt?

Post by Anonymous »

Wenn ich eine Django-Formularklasse ähnlich dieser definiere:

Code: Select all

def class MyForm(forms.Form):
check = forms.BooleanField(required=True, label="Check this")
Es wird zu HTML erweitert, das so aussieht:

Code: Select all

Check this: 


Ich möchte, dass das Kontrollkästchen-Eingabeelement eine Beschriftung hat, die dem Kontrollkästchen folgt, und nicht umgekehrt. Gibt es eine Möglichkeit, Django davon zu überzeugen?

[Bearbeiten]

Vielen Dank für die Antwort von Jonas – es behebt zwar das Problem, nach dem ich gefragt habe (Kontrollkästchen-Beschriftungen werden rechts vom Kontrollkästchen gerendert), führt aber zu einem neuen Problem (alle Widget-Beschriftungen werden rechts davon gerendert). Widgets...)

Ich möchte das Überschreiben von _html_output() vermeiden, da es offensichtlich nicht dafür konzipiert ist. Der Entwurf, den ich mir ausdenken würde, wäre, eine Feld-HTML-Ausgabemethode in den Field-Klassen zu implementieren, die Methode für das boolesche Feld zu überschreiben und diese Methode in _html_output() zu verwenden. Leider haben sich die Django-Entwickler für einen anderen Weg entschieden und ich möchte so weit wie möglich innerhalb des bestehenden Frameworks arbeiten.

CSS klingt nach einem anständigen Ansatz, außer dass ich nicht genug CSS kenne, um das durchzuziehen oder überhaupt zu entscheiden, ob mir dieser Ansatz gefällt oder nicht. Außerdem bevorzuge ich Markup, das immer noch der endgültigen Ausgabe ähnelt, zumindest in der Renderreihenfolge.

Da es darüber hinaus sinnvoll sein kann, mehr als ein Stylesheet für ein bestimmtes Markup zu haben, könnte dies in CSS bedeuten, dass man es mehrmals für mehrere Stile tun muss, was CSS so ziemlich zur falschen Antwort macht.

[Bearbeiten]

Scheint, als würde ich unten meine eigene Frage beantworten. Wenn jemand eine bessere Idee hat, wie das geht, seien Sie nicht schüchtern.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post