我第一次使用datatable
玩Laravel 5
所以我尝试使用此代码,我获取了ajax的数据,但无法在datatable
上显示数据。
任何想法如何将响应数据加载到数据表。
Route::get('admin/pages/datatable', 'admin\PagesController@getDataTable'); // Pages (Static Pages)
<section class="content">
<div class="row">
<div class="col-xs-12">
<div class="box">
<div class="box-header">
<h3 class="box-title">Pages Table</h3>
</div><!-- /.box-header -->
<div class="box-body">
<table id="example32" class="table table-bordered table-hover">
<thead>
<tr>
<th>PageId</th>
<th>Title</th>
<th>Text</th>
<th>MetaKeywords</th>
<th>MetaDescription</th>
<th>PostedBy</th>
</tr>
</thead>
<tfoot>
<tr>
<th>PageId</th>
<th>Title</th>
<th>Text</th>
<th>MetaKeywords</th>
<th>MetaDescription</th>
<th>PostedBy</th>
</tr>
</tfoot>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
</div><!-- /.col -->
</div><!-- /.row -->
</section><!-- /.content -->
public function getDataTable()
{
$Pages = new Pages();
return $GetAllPages = $Pages->GetPages();
}
public function GetPages()
{
return DB::table('pages')->select('PageId', 'Title', 'Text', 'MetaKeywords', 'MetaDescription', 'PostedBy')
->get();
}
答案 0 :(得分:0)
您必须传递索引数组而不是关联数组。您的回答应该是
{['pageid', 'Title', 'Text', ... ]}
只需按照正确的列顺序。
可能是你可以使用,
public function GetPages()
{
$pages = DB::table('pages')->select('PageId', 'Title', 'Text', 'MetaKeywords', 'MetaDescription', 'PostedBy')->get();
$pages = $pages->map(function($item){
return [$item->PageId, $item->Title,$item->Text,$item->MetaKeywords,$item->MetaDescription, $item->PostedBy ];
});
return $pages;
}