DataTable displaying JSON ouput rather than HTML table

DataTable displaying JSON ouput rather than HTML table

abufoysalabufoysal Posts: 2Questions: 1Answers: 0

I am using DataTable with Laravel. My DataTable jQuery code is like below

    $('#address_datatable').DataTable({
                    "order": [],
                    "columnDefs": [{
                        "targets": [ 0, 5 ],
                        "orderable": false
                    }],
                    processing: true,
                    serverSide: true,
                    ajax: '{{ url('show.addresses') }}',
                    columns: [
                        [
                            { data: 'id', name: 'id' },
                            { data: 'company_name', name: 'company_name' }
                        ]
                    ]
                });

My Laravel Route is like below

Route::get('show/addresses', 'AddressController@showAddresses')->name('show.addresses');

My Laravel controller function is like below

public function showAddresses()
    {

        return DataTables::of(Address::query())->make(true);
    }

I am getting output like below

This question has an accepted answers - jump to answer

Answers

  • allanallan Posts: 63,213Questions: 1Answers: 10,415 Site admin
    Answer ✓
     columns: [
                        [
                            { data: 'id', name: 'id' },
                            { data: 'company_name', name: 'company_name' }
                        ]
                    ]
    

    Nested array there. It should just be:

     columns: [
      { data: 'id', name: 'id' },
      { data: 'company_name', name: 'company_name' }
    ]
    

    Allan

This discussion has been closed.