Для создания фильтра для модели в Laravel, вы можете использовать Query Builder или Eloquent ORM.
1. Используя Query Builder:
```php
$filters = DB::table('table_name')->select('column_name')->distinct()->get();
// $filters содержит список уникальных значений из столбца 'column_name'
```
2. Используя Eloquent ORM:
```php
$filters = Model::select('column_name')->distinct()->get();
// $filters содержит список уникальных значений из столбца 'column_name'
```
Далее вам необходимо передать данные $filters в представление (например, в виде JSON) и отобразить их на фронтенде для выбора пользователем.
Для реализации динамических фильтров, вам также потребуется отслеживать выбранные пользователем фильтры и применять их к запросу к базе данных. Вы можете использовать методы where() или whereIn() для этого.
Пример использования фильтрации с Query Builder:
```php
$filteredData = DB::table('table_name')->where('column_name', '=', $filterValue)->get();
// $filteredData содержит данные, отфильтрованные по значению 'filterValue' в столбце 'column_name'
```
Пример использования фильтрации с Eloquent ORM:
```php
$filteredData = Model::where('column_name', '=', $filterValue)->get();
// $filteredData содержит данные, отфильтрованные по значению 'filterValue' в столбце 'column_name'
```
Таким образом, после получения выбранных пользователем фильтров, вы можете динамически применять их к запросу и получать соответствующие результаты.