Bom dia,
Estou com uma dificuldade em fazer a mensagem de erro aparecer no formulário. Por exemplo:
forms.py
class PasswordForm(forms.ModelForm):
password=forms.CharField(widget=forms.PasswordInput())
confirm_password=forms.CharField()
class Meta:
model=User
fields=['password']
def clean(self):
cleaned_data = super(PasswordForm, self).clean()
password = cleaned_data.get("password")
confirm_password = cleaned_data.get("confirm_password")
if password != confirm_password:
raise forms.ValidationError(
"password and confirm_password does not match"
)
views.py
def reset_password(request):
user_id = request.user.id
user = User.objects.get(id=user_id)
context = {
'form': PasswordForm()
}
if request.method == 'POST':
form = PasswordForm(request.POST, instance=request.user)
if form.is_valid():
password = form.cleaned_data['password']
user.set_password(password)
user.save()
return redirect('panel.profile')
context = {
'form': form
}
return render(request, 'panel/auth/reset_password.html', context)
reset_password.html
{% if form.errors %}
<div class="alert alert-danger">
<strong>{{ form.non_field_errors }}</strong>
</div>
{% endif %}
Gostaria que aparece aquela mensagem: "password and confirm_password does not match" que eu configurei acima caso as senhas não conferissem. Mas não estou sabendo fazer isso.
Agradeço desde já a ajuda de vocês