У меня есть следующий вызов ajax для обновления определенного поля модели
$("#updateLink").click(function(){
var dec_text = $('#desc_text').val();
$.ajax({
type: "POST",
url:"/users/update_desc/",
data: {
'val': dec_text,
},
success: function(){
$(".display, .edit").toggle();
$("#descText").html(dec_text);
},
error: function(){
alert("Error");
},
});
return false;
});
, и мое мнение таково
@csrf_exempt
def update_desc(request):
if request.is_ajax():
if request.method == 'POST':
desc_text = request.POST.get('val', False)
if desc_text:
profile = user.profile
profile.desc = desc_text
profile.save()
return_message = "Sent mail"
return HttpResponse(return_message,mimetype='application/javascript')
Я постоянно получаю сообщение об ошибке и не знаю, как ее решить. Я даже использовал декоратор csrf_exempt
для временного решения, если проблема была вызвана отсутствующим токеном csrf
, но все же проблема не устранена.
За исключением одного сообщения ajax
, в котором в моем базовом
шаблоне все вызовы ajax не работают. Кто-нибудь, пожалуйста, помогите понять, что здесь происходит. Я могу кое-что рассказать при необходимости более подробную информацию.
Изменить:
Я добавил файл js
, содержащий этот https://docs.djangoproject.com/en/dev/ref/contrib/csrf / # ajax в моем базовом шаблоне, значит, он присутствует в Заполните мои шаблоны. И я использую версию django 1.3.