with('role')->get(); return (new EloquentDataTable($query)) ->addColumn('action', 'users.action') ->setRowId('id'); } /** * Get the query source of dataTable. */ public function query(User $model): QueryBuilder { return $model->newQuery(); } /** * Optional method if you want to use the html builder. */ public function html(): HtmlBuilder { return $this->builder() ->setTableId('users-table') ->columns($this->getColumns()) ->minifiedAjax() //->dom('Bfrtip') ->orderBy(1) ->selectStyleSingle() ->buttons([ Button::make('excel'), Button::make('csv'), Button::make('pdf'), Button::make('print'), Button::make('reset'), Button::make('reload') ]); } /** * Get the dataTable columns definition. */ public function getColumns(): array { return [ Column::computed('action') ->exportable(false) ->printable(false) ->width(60) ->addClass('text-center'), Column::make('name'), Column::make('username'), Column::make('email'), Column::make('role'), Column::make('aksi'), ]; } /** * Get the filename for export. */ protected function filename(): string { return 'Users_' . date('YmdHis'); } }