Add thumbs views in datatables with traits

This commit is contained in:
Ludovic CANDELLIER
2021-11-01 18:37:25 +01:00
parent ae20643879
commit 900da34b57
17 changed files with 127 additions and 106 deletions

View File

@@ -5,6 +5,7 @@ namespace App\Datatables\Botanic;
use Yajra\DataTables\Html\Column;
use App\Datatables\ParentDataTable as DataTable;
use App\Models\Botanic\Specie;
use App\Repositories\Botanic\Species;
class SpeciesDataTable extends DataTable
{
@@ -12,25 +13,28 @@ class SpeciesDataTable extends DataTable
public function query(Specie $model)
{
$model = $model::withCount('varieties')->with('genre');
$model = $model::withCount('varieties')->with(['genre','image']);
return $this->buildQuery($model);
}
public function modifier($datatables)
{
$datatables
->editColumn('thumb', function (Specie $specie) {
return Species::getThumb($specie->image);
})
->editColumn('genre_name', function (Specie $specie) {
return $specie->genre ? $specie->genre->name : '';
})
->rawColumns(['genre_name', 'action']);
->rawColumns(['thumb', 'genre_name', 'action']);
return parent::modifier($datatables);
}
protected function getColumns()
{
return [
Column::make('name')->title('Nom'),
Column::make('thumb')->searchable(false)->orderable(false)->width(40)->class('text-center'),
Column::make('alias'),
Column::make('genre.name')->data('genre_name')->title('Genre'),
Column::make('latin'),