Передача объекта в Ajax
Это вопрос из двух частей. Первая часть - это возможность отправить массив объектов внутри объекта в ajax для отправки в python (django framework).
let object = {
"value1": 1,
"value2": 2,
"arrOfObject": [
{
"value3": 3,
"value4": 4,
},
{
"value3": 5,
"value4": 6
}]
}
let formData = $("form").serialize();
data = formData + '&' + jQuery.param(object)
$.ajax({
url: "someurl",
method: 'post',
data: data
})
Второй вопрос - это передача, при которой arrOfObject фактически приходит для django, чтобы начать с этого. Передача данных до того, как шаблон был отрисован и отправлен в другую функцию.
Конечно, сейчас я использую шаблонные теги для создания массива объектов, но мне интересно, могу ли я принимать переданные данные без каких-либо других итераций данных.
Я бы хотел избежать чего-то вроде
def someFunc(request):
arrOfObject = [
{
'value3': '3',
'value4': '4',
},
{
'value3': '5',
'value4': '6',
}
]
data['object'] = arrOfObject
return render(request, "some/template.html", data
let arrOfObjects = []
{% for data in object %}
let data_object = {
"value3": '{{ data.value3 }}',
"value4": '{{ data.value4 }}'
}
arrOfObjects,push(data_object);
{% endfor %}
Решил свой вопрос из того, что было предложено в комментариях. В принципе, нужно сделать JSON.stringify для массива объектов. Затем на стороне python вызвать json.loads