Передача массива с помощью AJAX в Django
У меня есть массив с названием metrics и я пытаюсь передать его в backend с помощью AJAX, но я получаю только последние значения массива 7,8,9
. Я хочу получить весь массив .Есть идеи как? Любая помощь будет принята с благодарностью.
html
var metrics = [
[1,2,3],
[4,5,6],
[7,8,9],
];
$.ajax({
type : 'GET' ,
url : "...",
data : {"metrics[]": metrics },
})
views.py
def Sensor_Metrics(request):
if request.is_ajax and request.method == "GET" :
metrics = request.GET.get("metrics[]")
print(metrics)
return JsonResponse({"error": ""}, status=400)
Решением является добавление скобок в views.py
при вызове запроса.
в скрипте
var metrics = [
[1,2,3],
[4,5,6],
[7,8,9],
];
$.ajax({
type : 'GET' ,
url : "...",
data : {"metrics": metrics},
})
в файле views.py
def Sensor_Metrics(request):
if request.is_ajax and request.method == "GET" :
metrics = request.GET.get("metrics[]") #Important
print(metrics)
return JsonResponse({"error": ""}, status=400)
Приглашаем вас
В представлениях необходимо использовать request.GET.getlist
, чтобы получить полный список из запроса.
Для получения полного списка из запроса необходимо использовать -: metrics = request.GET.getlist("metrics[]")
. Вы можете обратиться к документации здесь.