Как сделать простую арифметическую валидацию в части шаблона - django

Я хочу проверить общую цену и цену получения при вводе пользователем, цена получения не должна быть больше общей цены.

например, у меня есть 3 поля ввода. поле a получает значение общей цены, поле b получает значение получения оплаты по карте и поле c получает значение получения оплаты наличными. поле b + поле c не должно быть больше поля a. Мне нужно проверить его и остановить отправку.

Это может быть очень просто, так как я новичок в django, я размещаю это здесь.

#forms.py
from django import forms
class YourForm(forms.Form):
    a_value = forms.IntegerField(label='A value')
    b_value = forms.IntegerField(label='B value')
    c_value = forms.IntegerField(label='C value')

    def check_values(self):
        a = self.cleaned_data['a_value']
        b = self.cleaned_data['b_value']
        c = self.cleaned_data['c_value']
        if a > b + c:
            return True
        return False


#views.py
class Validate(View):

    template = 'validate.html'

    def get(self, request):
        form = YourForm()
        return render(request, self.template, {'form': form})

    def post(self, request):
        form = YourForm(request.POST)
        if form.is_valid():
            if form.check_values():
                return HttpResponse('Values are valid')
            else:
                return render(request, self.template, {'form': form, 'error': 'Values are not valid'})
Вернуться на верх