J'ai un problème, je veux obtenir toutes les données de list
donc je veux parcourir chaque donnée de l'élément sélectionné et l'insérer dans la base de données,
Actuellement, lorsque j'imprime ['[object Object]', '[object Object]']
, il renvoie des données comme celle-ci,
Comment insérer ces données une à une ? Ou simplement les imprimer un par un ?
J'ai cette liste qui est selected_items Je boucle les données puis je les transmets à ajax
selected_items = []; for (var i = 0; i < checkBoxes.length; i++) { var selected_obj ={ stock_id: checkBoxes[i].id, quantity: row.cells[3].innerHTML } selected_items.push(selected_obj); }
Quand la console selected_items est comme ça
Alors maintenant, je veux transmettre ces listes à Django en utilisant ajax
console.log(selected_items); $.ajax({ type: "POST", url: "{% url 'sales-item' %}", data:{ multiple_list: selected_items.join(','), item_size: selected_items.length } }).done(function(data){...
views.py
out_items = request.POST.getlist('multiple_list[]') print(out_items)
Voici à quoi cela ressemble une fois imprimé
['[object Object]', '[object Object]']
Code mis à jourComment boucler les données ? C'est ce que j'ai essayé mais cela ne reflète pas du tout les données
multiple_list: JSON.stringify(selected_items)
view.py
out_items = request.POST.get('multiple_list') for i in out_items: print(out_items1[i])
**Comment imprimer ou insérer dans la base de données ?
Quand vous exécutez
selected_items.join(',')
时,您正在获取{'stock_id': 5, 'quantity': 15}
的__str__
(或等效的 js),它恰好是[object Object ]
Je recommande donc d'utiliser simplement Json, qui encodera l'intégralité du dictionnaire de liste imbriquée et sera chargé comme un dictionnaire de liste normal en python
Javascript
Python
Modifier
Oui ! , vous faites simplement une boucle dessus comme un dictionnaire de liste imbriquée normal
Mais ! Si vous connaissez chaque projet que vous allez créer, je vous recommande d'utiliser
bulk_create
&Points forts supplémentaires
Ceux-ci fonctionnent tous de la même manière ! (C'est très pratique pour créer des filtres dynamiquement ;))