Gibt es eine Möglichkeit, ein Django Form Passwortfeld vorab zu füllen, so dass es etwas in dem resultierenden <input type="password">
html-Element angezeigt werden?
Das Standardverhalten scheint nichts anzuzeigen, wenn MyForm(initial = {'passfield':'something'})
gesetzt ist.
Ich brauche das, um ein Benutzer-Bearbeitungsformular zu implementieren. Ich möchte eine zufällige Zeichenfolge anzeigen, die, wenn der Benutzer nicht ändert, ich weiß, dass er das Kennwort nicht ändern möchte. Also ich glaube nicht, dass es irgendein Sicherheitsproblem in dem gibt, was ich versuche zu tun.
Es scheint, dass die Verwendung des Arguments render_value nicht nur für den in den Django-Dokumenten aufgelisteten Fall funktioniert und kann verwendet werden:
%Vor% Laut den Dokumenten unterstützt Django PasswordField
den Anfangswert nicht . Selbst wenn du es passierst, würde es nicht rendern.
Sie können das Feld entweder unterklassifizieren und ein eigenes Passwort-Widget erstellen, das Ihnen dies ermöglicht, oder Sie können HTML5 placeholder
verwenden. HTML5 ist viel sicherer, weil Sie dem Benutzer etwas anzeigen können, aber nicht das Passwort selbst.
Für HTML5-Unterstützung können Sie Ссылка verwenden. Dann können Sie etwas tun (nicht exakte Syntax, sondern etwas in der Art von):
%Vor%Ich bin auf eine ähnliche Situation gestoßen und habe Folgendes getan:
%Vor% In PasswordField
gibt es PasswordInput
Feld Sie müssen render_value = True
wie oben erwähnt setzen, was standardmäßig False
ist, dann habe ich während der Initialisierung von UserForm
den Anfangswert für das Passwort übergeben.
Jetzt wurde dieser Anfangswert in der Einstellungsdatei vordefiniert, die ich vergleiche, wenn das Passwort geändert wird, dann aktualisiere das Passwort, sonst belasse das Original wie es ist.
Tags und Links django django-forms