@@ -8,20 +8,23 @@ use Yajra\DataTables\Html\Column;
88use Yajra\DataTables\Services\DataTable;
99use Yajra\DataTables\Html\Editor\Fields;
1010use Yajra\DataTables\Html\Editor\Editor;
11+ use Illuminate\Database\Eloquent\Builder as QueryBuilder;
12+ use Yajra\DataTables\EloquentDataTable;
13+ use Yajra\DataTables\Html\Builder as HtmlBuilder;
1114
1215class DummyClass extends DataTable
1316{
1417 /**
1518 * Build DataTable class.
1619 *
17- * @param mixed $query Results from query() method.
18- * @return \Yajra\DataTables\DataTableAbstract
20+ * @param QueryBuilder $query Results from query() method.
21+ * @return \Yajra\DataTables\EloquentDataTable
1922 */
20- public function dataTable($query)
23+ public function dataTable(QueryBuilder $query): EloquentDataTable
2124 {
22- return datatables( )
23- ->eloquent($query )
24- ->addColumn('action', 'DummyAction ');
25+ return (new EloquentDataTable($query) )
26+ ->addColumn('action', 'DummyAction' )
27+ ->setRowId('id ');
2528 }
2629
2730 /**
@@ -30,7 +33,7 @@ class DummyClass extends DataTable
3033 * @param \DummyModel $model
3134 * @return \Illuminate\Database\Eloquent\Builder
3235 */
33- public function query(ModelName $model)
36+ public function query(ModelName $model): QueryBuilder
3437 {
3538 return $model->newQuery();
3639 }
@@ -40,7 +43,7 @@ class DummyClass extends DataTable
4043 *
4144 * @return \Yajra\DataTables\Html\Builder
4245 */
43- public function html()
46+ public function html(): HtmlBuilder
4447 {
4548 return $this->builder()
4649 ->setTableId('DummyTableId')
@@ -58,7 +61,7 @@ class DummyClass extends DataTable
5861 *
5962 * @return array
6063 */
61- protected function getColumns()
64+ protected function getColumns(): array
6265 {
6366 return [
6467 Column::computed('action')
@@ -75,7 +78,7 @@ class DummyClass extends DataTable
7578 *
7679 * @return string
7780 */
78- protected function filename() : string
81+ protected function filename(): string
7982 {
8083 return 'DummyFilename_' . date('YmdHis');
8184 }
0 commit comments