Отправьте запрос на View Django, не получив никакого ответа

Я задаю пользователю вопрос на моем сайте и если ответ положительный, я отправляю два данных в View Django с помощью JavaScript файла и используя Ajax. Я хочу получить эти данные в View Django и не отправлять пользователю никакого HttpResponse. Если мы не отправим ответ в представление, оно выдаст ошибку. Как мне это сделать?

Когда условие if request.is_ajax (): Выполняется, я получаю следующую ошибку:

ValueError: Представление tourist.views.planing не вернуло объект HttpResponse. Вместо этого оно вернуло None.

Спасибо


def planing(request):   
          
    if request.is_ajax():
        # Get user location from user location.js file:
        latitude = request.POST.get('latitude', None)
        longitude = request.POST.get('longitude', None)

        # To save data
        request.session['latitude'] = latitude
        request.session['longitude'] = longitude


    elif request.method == "GET":
        return render(request, "tourist/planing.html")
        
          
    elif request.method == "POST":
        # To retrive data:
        latitude = request.session.get('latitude')
        longitude = request.session.get('longitude')
        if latitude is not None :
            latitude = float(latitude)
            longitude = float(longitude)
       
        .
        .
        .
        return render(request, "tourist/map.html")


Вы можете вернуть пустой JSON. Например, так:

from django.http import JsonResponse

if request.is_ajax():
    # Get user location from user location.js file:
    latitude = request.POST.get('latitude', None)
    longitude = request.POST.get('longitude', None)

    # To save data
    request.session['latitude'] = latitude
    request.session['longitude'] = longitude
    return JsonResponse({})

Это обеспечит ответ на AJAX-запрос.

Вернуться на верх