sto usando un ModelForm per l'utente in questo modo:Django problemi di password
class UserForm(forms.ModelForm):
class Meta:
model = User
fields = ('username','password','email',)
ma il campo della password si presenta come un campo di testo normale, non un inserimento della password. Come posso assicurarmi che mostri un campo password?
ho provato questo:
class UserForm(forms.ModelForm):
username = forms.CharField(max_length = 15, min_length = 6)
password = forms.PasswordInput()
class Meta:
model = User
fields = ('username','password','email',)
ma che non funziona neanche.
Sto anche cercando di aggiungere un campo Conferma password in questo modo, ma questo non provoca campi devono essere visualizzati:
class UserForm(forms.ModelForm):
username = forms.CharField(max_length = 15, min_length = 6)
password = forms.PasswordInput()
cpassword = forms.PasswordInput()
def clean(self):
if self.cleaned_data['cpassword']!=self.cleaned_data['password']:
raise forms.ValidationError("Passwords don't match")
class Meta:
model = User
fields = ('username','password','cpassword','email',)
grazie, non sapevo che si potesse fare sarebbe lo stesso cosa per confermare la password? – JPC
Dato che quel campo non è nel modello, dovrai dichiararlo separatamente ... Aggiornerò la mia risposta – Zach
Non sono ancora sicuro di aver capito perché devo specificare PasswordInput come widget per un CharField . Sono entrambe le forme, no? Perché non posso semplicemente usare PasswordInput? Grazie! – JPC