Problem with Ajax form in Django Template [closed]

1

How can I access the dictionary if django makes the key unique, since it is necessary to send a json with arrays?

This is my Ajax code in a Django template

<script type="text/javascript">

function RegistrarAperturacaja(){
    alert($("input[name=csrfmiddlewaretoken]").val());
    var datos = {
        aperturacaja:[
        {
        fechaaperturacaja: "",
        caja_idcaja: $("#cmbCaja").val(),
        detalleaperturacaja: $("#descaperturacaja").val(),
        estadoaperturacaja: 1,
        activoaperturacaja: 1,        
        montoaperturacaja: $("#txtMontoApertura").val(),

        }] ,
        csrfmiddlewaretoken: $("input[name=csrfmiddlewaretoken]").val()
    };  

    var sendData = JSON.stringify(datos);

    $.ajax({
        url: strRootUrl+"/insertaraperturacaja/",
        contentType: "application/json; charset=utf-8",
        type: "POST",
        async: false,
        data: sendData,

        success: function(msg) {

                alert("Se Registro correctamente la Apertura de Caja");

        }
    });

}

Django View al hace - > print request.POST

<QueryDict: {u'aperturacaja[0][detalleaperturacaja]': [u'asd '], u'aperturacaja[0][caja_idcaja]': [u'1'], u'aperturacaja[0][activoaperturacaja]': [u'1'], u'aperturacaja[0][fechaaperturacaja]': [u''], u'csrfmiddlewaretoken': [u'kqmnDQCA5qW98HpQFmqewoaRaPB10WNV'], u'aperturacaja[0][montoaperturacaja]': [u'11'], u'aperturacaja[0][estadoaperturacaja]': [u'1']}>

How can I access the dictionary if the key makes it a single one, since it is necessary to send a json with arrays?

    
asked by Erick Sulca Hermoza 03.03.2016 в 21:55
source

1 answer

1

Try this:

Diccionario = dict(DiccionarioJSON.iterlists())
  • dict takes a pair (key, value) and converts it into a dictionary.
  • queryDict is a type of data structure used in Django where the method iterlists() returns where it includes the values as a list. JSON Dictionary is a queryDict and Dictionary It is a python dictionary.
answered by 04.03.2016 в 04:26