eloquent($query); return self::addButtons($datatables); } /** * Add buttons DataTable class. * * @param mixed $query Results from query() method. * @return \Yajra\DataTables\DataTableAbstract */ public function addButtons($datatables) { $buttons = ''; $buttons .= ''; $buttons .= ''; return $datatables->addColumn('action', $buttons); } /** * Get query source of dataTable. * * @param \App\Family $model * @return \Illuminate\Database\Eloquent\Builder */ public function buildQuery($model) { return $model->newQuery(); } /** * Optional method if you want to use html builder. * * @return \Yajra\DataTables\Html\Builder */ public function html() { return self::buildHtml(strtolower($this->model_name) . '-table'); } /** * Optional method if you want to use html builder. * * @return \Yajra\DataTables\Html\Builder */ public function buildHtml($id) { return $this->builder() ->setTableId($id) ->columns($this->getColumns()) ->minifiedAjax() ->dom('Bfrtip') ->orderBy(0,'asc') ->buttons( Button::make('export'), Button::make('print') ); } /** * Get filename for export. * * @return string */ protected function filename() { return self::buildFilename($this->model_name); } /** * Get filename for export. * * @return string */ protected function buildFilename($models_name) { return $models_name . '_' . date('YmdHis'); } }