Передать объект массива из Ajax в Django Framework - PullRequest
0 голосов
/ 09 июля 2020

Ajax код

Предположим, что arry1D имеет значения [0,1,2,3,4]

$.ajax({
  url: "{% url 'form_post' %}",
  type: "POST",
  data: {
    arry1D: arry1D,
    'csrfmiddlewaretoken': tk
  },
  cache:false,

});

Ниже кода функции getModelAttribute() в view.py

I Я пытаюсь получить доступ к элементу arry1D[0], но не смог.

def getModelAttribute(request, self=None):
    print("In Method")
    if request.method == "POST" and request.is_ajax():
        arry1D = request.POST.get('arry1D')
        print(arry1D[0])
        return JsonResponse({'arry1D':arry1D})

1 Ответ

0 голосов
/ 09 июля 2020

, чтобы получить доступ к объекту массива arry1D, вам нужно getlist(), а не get()

, измените эту строку

arry1D = request.POST.get('arry1D')

на

arry1D = request.POST.getlist('arry1D')

обратитесь к этому топу c https://docs.djangoproject.com/en/3.0/ref/request-response/#django .http.QueryDict.getlist

...