Как изменить сообщение об ошибке пустого поля по умолчанию для полей Django Form
Я хочу изменить сообщение об ошибке по умолчанию для пустых полей. Я имею в виду это сообщение:
и я хочу иметь текст под полем "номер телефона", который появляется, если пользователь не набрал ровно 11 цифр (текст будет появляться при вводе символа и исчезать при вводе 11 цифр)
и есть ли способ отключить кнопку, если вышеуказанные условия не выполняются?
это forms.py:
class LoginForm(forms.Form):
phone_number = forms.CharField(
label='Phone number',
label_suffix=':*',
widget=forms.TextInput(
attrs={
'class':'form-control',
'id':'user_phone_number',
}
))
password = forms.CharField(
label='Password',
widget=forms.PasswordInput(
attrs={
'class':'form-control',
'id':'user_password',
}
)
)
def clean_phone_number(self):
phone_number = self.cleaned_data.get('phone_number')
qs = User.objects.filter(phone_number=phone_number)
if not qs.exists:
raise forms.ValidationError('This is an invalid phone number')
return phone_number
это views.py:
def login_view(request):
form = LoginForm(request.POST or None)
if form.is_valid():
phone_number = form.cleaned_data.get('phone_number')
password = form.cleaned_data.get('password')
customer = authenticate(request, phone_number=phone_number,password=password)
if customer != None:
# request.customer == customer
login(request, customer)
return redirect("/")
else:
# attempt = request.session.get('attempt') or 0
# request.session['attempt'] = attempt + 1
request.session['invalid_user'] = 1
return render(request, 'authentication/login.html',{'form':form})
это шаблон:
{%extends '_base.html'%}
{%block title%}Login{%endblock title%}
{% block content%}
<form action="" method="post">
{%csrf_token%}
{{form.as_p}}
<button type="submit" class="btn btn-success">Login</button>
</form>
{% endblock content%}
Заранее спасибо