我使用laravel 5.2和Yajra Datatable来实现带有ajax的表。我遵循了这个教程:https://datatables.yajrabox.com/但最后我有“无效的JSON响应”,我不知道为什么。
我的控制器:
class ContactController extends Controller
{
public function index()
{
return view("contacts.list");
}
public function data()
{
$contacts = Contact::select(array(
'NOM', 'PRENOM'
));
return(Datatables::of($contacts)->make(true));
}
}
我的观点:
<table class="table table-bordered" id="users">
<thead>
<tr>
<th>NOM</th>
<th>PRENOM</th>
</tr>
</thead>
</table>
<script type="text/javascript">
var $ = jQuery.noConflict();
$(document).ready(function() {
oTable = $('#users').DataTable({
"processing": true,
"serverSide": true,
"ajax": "{{ route('contacts.data') }}",
"columns": [
{data: 'NOM', name: 'NOM'},
{data: 'PRENOM', name: 'PRENOM'}
]
});
});
</script>
我的路线:
Route::resource('contacts', 'ContactController');
Route::get('contacts/data', ['as' => 'contacts.data', 'uses' => 'ContactController@data']);
的结果
dd(Datatables::of($contacts)->make(true))
当我在index()中执行它时,在我的控制器中
答案 0 :(得分:1)
我想它应该是:
return(Datatables::of($contacts->get())->make(true));