Dans un formulaire Django, je demande aux utilisateurs de saisir leurs noms d'utilisateur et mots de passe comme suit:

from django.contrib.auth.forms import AuthenticationForm

class ReauthForm(AuthenticationForm):
    username = forms.CharField(max_length=254)
    password = forms.CharField(label=_("Password"), widget=forms.PasswordInput)
    class Meta:
        exclude = ("username",)
        fields = ("password",)

Y a-t-il un paramètre que je peux passer dans la méthode du widget (ou autre chose) qui permet au mot de passe d'être visible lorsqu'il est tapé?

0
Hassan Baig 17 janv. 2017 à 16:12

2 réponses

Meilleure réponse

Rendre les mots de passe invisibles est littéralement la seule chose que fait le widget PasswordInput. Si vous ne le souhaitez pas, n'utilisez pas ce widget; utilisez plutôt le TextInput par défaut.

2
Daniel Roseman 17 janv. 2017 à 13:14

Vous pouvez choisir un autre widget à utiliser à la place de PasswordInput ou simplement le supprimer complètement.

password = forms.CharField(label=_("Password"))

MAIS NE PAS

Cela donnera à vos utilisateurs le sentiment un peu plus audacieux que vous ne vous souciez pas beaucoup de la sécurité de leur mot de passe, et les ouvrira aux surfeurs d'épaule

0
Sayse 17 janv. 2017 à 13:14