Как изменить сообщение об ошибке пустого поля по умолчанию для полей Django Form

Я хочу изменить сообщение об ошибке по умолчанию для пустых полей. Я имею в виду это сообщение:

enter image description here

и я хочу иметь текст под полем "номер телефона", который появляется, если пользователь не набрал ровно 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%}

Заранее спасибо

Вернуться на верх