#FEAT
+ Added new example about the new feature: custom column
This commit is contained in:
38
app/Tables/TableWithCustomColumn.php
Normal file
38
app/Tables/TableWithCustomColumn.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
namespace App\Tables;
|
||||
|
||||
use App\Models\Product;
|
||||
use App\Tables\Extensions\IconColumn;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Mmt\GenericTable\Components\Column;
|
||||
use Mmt\GenericTable\Components\ColumnCollection;
|
||||
use Mmt\GenericTable\Interfaces\IGenericTable;
|
||||
|
||||
class TableWithCustomColumn implements IGenericTable
|
||||
{
|
||||
public Model|string $model;
|
||||
|
||||
public ColumnCollection $columns;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->model = new Product();
|
||||
$this->columns = new ColumnCollection();
|
||||
|
||||
$icons = require_once('Extensions/bootstrap_icons.php');
|
||||
|
||||
$this->columns->add(new Column('Id'));
|
||||
$this->columns->add(new Column('Name'));
|
||||
$this->columns->add(new Column('Description'));
|
||||
$this->columns->add(new IconColumn()->setIconIf(function(Model $rowModel) use($icons) {
|
||||
|
||||
if($rowModel->status == 'discontinued') {
|
||||
return $icons['bag-check'] . ' text-success';
|
||||
}
|
||||
else {
|
||||
return $icons['bag-x'] . ' text-danger';
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user