Как получить массив данных через Ajax в Django

Суть такая: В js у меня генерируется массив данных, после чего отображаются на странице. По кнопке они должны отправляться на сервер и в бд. Не пойму, как через Ajax корректно это реализовать. До добавление в бд еще не дошел, остановился на том, как в принципе вытащить данные на сервер, при отработке функции получаю 200, но ничего не происходит

 function Upload_Card(){

    $.ajax({
        type:'POST',
        data:  card_array,
        url:  "%5Eupload_card$",        
        processData: false,
        success: function (response) {
            if (response.operation_status == 'ok') {
                alert ('All done ok')
            } else {
                alert ('Ups. Found some error!')
            }
        },
        error: function (response) {
            alert("GG")
        }

    });
}





def upload_card(request):
    array_card = request.POST.get("card_array[]")
    return HttpResponse(array_card)



urlpatterns = [
    path('', views.main, name='MainPage'),
    path(r'^upload_card$', views.upload_card, name='upload_card'),

]

Ответы (1 шт):

Автор решения: fsd amp

для получения списка, тебе необходимо использовать метод getlist. поправь сперва ajax:

url:  "{% url 'upload_card' %}",

Твой пример:

array_card = request.POST.get("card_array[]")

изменить на

array_card = request.POST.getlist("card_array")

print(array_card) для того чтобы просмотреть что получилось по итогу, а дальше уже запись в бд

→ Ссылка