Удаленный метод Jquery Validation всегда показывает недопустимый результат
Я пытаюсь проверить html-функцию с помощью django и jQuery validation. Я хочу, чтобы jQuery валидация чтобы проверить, существует ли уже вставленный email,
Это мой jQuery valdiation remote
email: {
validators: {
notEmpty: {
message: 'email field can not be empty'
},
emailAddress: {
message: 'is not a valid email'
},
remote: {
message: 'email is already in use',
url: '/validate_email/',
type: 'post',
data: {
email: function() {
return $('#email').val();
}
},
},
},
},
Урл вызывает мой view def, который является
def validate_email(request):
email = request.GET.get('email', None)
data = not Vendors.objects.filter(email__iexact=email).exists()
if data is True:
data = "true"
else:
data = "false"
return JsonResponse(data, safe=False)
Я получаю правильный "true" или "false" JsonResponse, но сообщение всегда показывает, что email уже используется и просит меня исправить его.
Я пробовал передавать JsonResponse как true или false без "", также пробовал передавать JsonResponse как is_taken: true или is_taken: false.
В вашем представлении Django необходимо вернуть ответ JSON в следующем формате:
return JsonResponse({"valid": data})
Плагин jQuery Validation поймет, что письмо действительно, если ответ "valid":true
и недействительно, если ответ "valid": false
.