我正在尝试使用jquery的数据表来创建一个包含数据库中已获取成员的表。 这是我的html和javascript代码:
<table id="workerTable" class="table-bordered table-hover" width="80%" cellspacing="0">
<thead>
<tr>
<th>Id</th>
<th>Name</th>
<th>Role</th>
<th>Dep_id</th>
<th>Start_Date</th>
<th>Updated</th>
</tr>
</thead>
</table>
<script type="text/javascript">
$(document).ready(function() {
$('#workerTable').DataTable( {
"processing": true,
"serverSide": true,
"ajax": {{ URL::route('workerData') }}
} );
} );
</script>
我定义了这条路线:
Route::get('/workers/data' , 'WorkersController@fetch')->name('workerData');
WorkersController中的函数fetch()就是这样:
public function fetch()
{
$workers = Worker::all();
echo json_encode($workers);
}
我是laravel的新手,我想我不太了解它。是对此行的调用
“ajax”:{{URL :: route('workerData')}}
使路由调用WorkersController的fetch函数?
答案 0 :(得分:1)
如果您尚未使用此软件包,则应使用此软件包:https://github.com/yajra/laravel-datatables
然后更换
"ajax": {{ URL::route('workerData') }}
通过
"ajax": {{ route('workerData') }}
这是对你的功能的修正
use App\Worker;
use Yajra\Datatables\Datatables;
// ...
public function fetch()
{
$workers = Worker::all();
return Datatables::of($workers)->make(true);
}