Почему я получаю ошибку валидации, даже если ввод в форму правильный

Я изучал Django form validation на каком-то онлайн ресурсе, работал над валидацией формы, создал ошибку валидации, изображающую условие и передал ее в поле формы, но ошибка валидации поднимается даже если я ввожу правильные данные. Подобное произошло, когда я создал ошибку валидации для botcatcher без использования валидаторов, ошибка не возникала, даже если я вводил данные через inspect (его код закомментирован), помогите мне!

forms.py

from django import forms
from django.core import validators


def check_name(value):
    if value[0].lower() != 'K':
        raise forms.ValidationError('Name  should start with K')


class FormName(forms.Form):
    name = forms.CharField(validators=[check_name])
    email = forms.EmailField()
    text = forms.CharField(widget=forms.Textarea)
    botcatcher = forms.CharField(required=False,
                                 widget=forms.HiddenInput,
                                 validators=[validators.MaxLengthValidator(0)])
    # def cleaned_botcatcher(self):
    #     botcatcher = self.cleaned_data['botcatcher']
    #     if len(botcatcher) > 0:
    #         raise forms.ValidationError('CAUGHT THE BOT')
    #     return botcatcher
[webpage for same][1]

views.py

from django.shortcuts import render
from . import forms
# we can also use from basicapp import forms . refers to current directory
# Create your views here.


def index(request):
    return render(request, 'basicapp/index.html')


def form_name_view(request):
    form = forms.FormName()

    if request.method == 'POST':
        form = forms.FormName(request.POST)

        if form.is_valid():
            # DO something
            print("VALIDATION SUCCESS , POSTED")
            # Retreiving posted data
            print("NAME: " + form.cleaned_data["name"])
            print("EMAIL: " + form.cleaned_data["email"])
            print("TEXT: " + form.cleaned_data["text"])

    return render(request, 'basicapp/form_page.html', {'form': form})

Я допустил ошибку в функции валидатора check_name там я использовал нижний регистр, но я проверяю с верхним регистром 'K', что приводит к несовпадению.

def check_name(value):
    if value[0].lower() != 'k':
        raise forms.ValidationError('Name should start with k')

Но все же мне нужна помощь относительно валидатора botcatcher, который не выдавал ошибку, даже когда должен был.

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