Пакет Livewire Tables переносит динамические таблицы для моделей в Laravel Livewire. Вот некоторые из основных моментов, которые вы получите из коробки:
- Выбор столбцов, которые вы хотите видеть
- Одновременное применение нескольких фильтров
- Выполнение действий с выбранными записями
- Отлично работает с признаком SoftDeletes
- Поиск по столбцам по отдельности
- Поддержка нескольких типов столбцов
- Поддержка темного режима
- 100% покрытие кода
Он работает путем создания компонента таблицы, который является продолжением базового LivewireTable
компонента, как показано в следующем примере:Не повторяя документацию, вот пример того, как можно сопоставить столбцы таблицы со столбцом модели:
namespace App\Livewire;
use RamonRietdijk\LivewireTables\Livewire\LivewireTable;
class BlogTable extends LivewireTable
{
protected string $model = Blog::class;
}
// Normal column
Column::make(__('Name'), 'name'),
// A boolean column
BooleanColumn::make(__('Published'), 'published'),
// A date-based column
DateColumn::make(__('Created At'), 'created_at')
->format('d m Y'),
Существуют различные другие типы столбцов, на которые можно ссылаться в документации по столбцам. Помимо столбцов, вы также можете определить фильтры, действия со столбцами и многое другое.
Чтобы отобразить компонент таблицы, как в нашем примере, вы можете написать следующее:
<livewire:blog-table/>
Вы можете начать с этого пакета, ознакомившись с документацией, начиная с Введения в таблицы Livewire. Также доступна демоверсия, если вы хотите увидеть ее в действии, прежде чем погрузиться в нее! Наконец, вы можете увидеть исходный код на GitHub по адресу ramonrietdijk/livewire-tables.