помогите пожалуйста разобраться с проверкой выполнения ajax-запроса
есть форма. при её отправке загружается страничка со следующим контроллером:
def reviewsFancyCall(request):
if request.method == "POST" and request.is_ajax():
c = ReviewsFancy(
title=request.POST.get("title", ""),
name=request.POST.get("name", ""),
message=request.POST.get("message", ""),
)
c.save()
with open(settings.BASE_DIR + 'qwe.txt', "wb") as f:
f.write(bytes('ok', 'UTF-8'))
return HttpResponse("ok")
else:
with open(settings.BASE_DIR + 'qwe.txt', "wb") as f:
f.write(bytes('no', 'UTF-8'))
return HttpResponse("bad")
в результате всё работает так как и задумано. данные успешно записываются в таблицу. но меня беспокоит то, что контроллер возвращает return HttpResponse("ok") или return HttpResponse("bad"). во-первых это не красиво и не логично, во-вторых эти значения нужно как-то использовать чтобы проверить была запись в БД успешной или нет(например в данный момент на таблице может стоять блокировка)
подскажите пожалуйста что нужно возвращать и как использовать для проверки успеха операции
вот фрагмент код из js:
$.ajax({
url: "/reviewsFancy/call/",
type: 'POST',
dataType:"html",
data: {
"title": title.val(),
"name": name.val(),
"message": message.val(),
},
error: function() {
console.log('err');
alert('Ошибка получения запроса');
},
// При успехе очищаем поля и меняем кнопочку
success: function() {
console.log('succ');
title.val('');
name.val('');
message.val('');
$('.reviews_fancy').toggleClass('hide');
alert('сообщение отправлено');
},