Während Daniel Rosemans Antwort funktioniert, ist es nicht die beste Lösung. Es erfordert ein wenig Code-Duplizierung, indem Sie das Formularfeld erneut deklarieren müssen. Wenn Sie zum Beispiel ein verbose_name
für dieses Feld hätten, müssten Sie auch label='My verbose_name already set on model'
zur Zeile CharField
hinzufügen, da bei einer erneuten Deklaration des gesamten Felds grundsätzlich alles gelöscht wird, was in Ihrem Modell für dieses Feld eingestellt ist.
Der bessere Ansatz besteht darin, die Methode __init__
des Formulars zu überschreiben und explizit field.required
auf True
oder False
zu setzen.
Sicher. Definieren Sie einfach ein benutzerdefiniertes Formular, wobei Ihr erforderliches Feld überschrieben werden muss, um required = True festzulegen, und verwenden Sie es in Ihrer Admin-Klasse.
%Vor%Also verwendet MyAdmin das überschriebene Formular, aber MyInlineAdmin nicht.
Tags und Links django django-admin