def form_invalid(self, form):
if self.request.is_ajax():
data = {
'code': 0,
'message': form.errors
}
return JsonResponse(data)
else:
response = super(AjaxableResponseMixin, self).form_invalid(form)
return response
def form_valid(self, form):
form.instance.subject = "Заявка перезвонить № " + str(random.randint(1, 999999))
form.instance.type = "1"
if form.instance.phone == '':
if self.request.is_ajax():
data = {
'code': 0,
'message': 'Проверьте информацию',
}
return JsonResponse(data)
else:
response = super(AjaxableResponseMixin, self).form_valid(form)
if self.request.is_ajax():
data = {
'code': 1,
'message': 'Успешно отправлено',
}
return JsonResponse(data)
else:
return response
Но это не совсем корректно, а как отследить каждую ошибку и вернуть ее в ответе json, чтобы обработать и через js подсветить поле. Кто какие велосипеды делает?