Datatable,Javascript и Json

У меня есть веб-приложение Django Python, у меня есть функция:

def showreport(newrequest) :
        rep1 = get_report_data(newrequest,2)
        data={['columns':rep1[0],'rows':rep1[1]}
        return JsonResponse(data,safe=False)

я вызываю эту функцию из javascript на странице HTML, возвращаемая информация - это массив с двумя элементами, 1 представляет столбцы, а другой - данные.

Я хочу представить на странице HTML данные в объекте DataTable, а поскольку столбцы и данные являются динамическими, я хочу динамически создавать DataTable.

В HTML

В JavaScript $(документ).ready(function () {

 $("#showresults").on('click', function(evt) {
  evt.preventDefault();
 $('#show_loading').show();
$('#theTable').hide();
froms = document.getElementById('startdate').value;
tos = document.getElementById('todate').value;        
    $.ajax({
            type: "POST",
            url: 'showreport',
            data: {
                'start_date' : froms,
                'end_date' :tos,
                   'csrfmiddlewaretoken': '{{ csrf_token }}'
            },
            success: function (data, textStatus, jqXHR) {

               $('#show_loading').hide();          
   var rowSet=data['rows'];
 var columnset =data['columns'];

       $('#theTable').DataTable({
    "processing": true,
    searching: false,
    paging: false,
   "bInfo" : false,
 columns:  [columnset]  ,
    data: [rowSet]
   } ); 
$('#theTable').show();

            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                $('#show_loading').hide();
                alert("Error, please try again!");
            }
});  
        });    

    });

Теперь у меня проблема в том, что столбцы не представлены, а данные представляют только 1 строку и не разделены на столбцы.

В режиме проверки я вижу {"rows": [["Test1", "Test2"],["Test3", "Test4"] и т. Д..., "columns": ["col1","col2"]}

Что я делаю неправильно.

Спасибо н

1 ответ

Я думаю, у вас есть массив из массива:)

пытаться

изменить это

columns: [columnset],
data: [rowSet]

к этому

columns: columnset,
data: rowSet
Другие вопросы по тегам