РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗ppflSpFdEn 21 of 250 menu
◀ ▶

Варианты из перечисления в Filament

Давайте возьмём варианты из перечисления. Статус поста хранят в одном типе PHP, а список на форме строят из его кейсов. Смотрим на /admin/posts/create.

У Select метод options принимает имя класса перечисления. Filament сам соберёт ключи и подписи из кейсов.

Подключим статус в PostForm.php:

<?php namespace App\Filament\Resources\Posts\Schemas; use App\Enums\Status; use Filament\Forms\Components\Select; use Filament\Schemas\Schema; class PostForm { public static function configure(Schema $schema): Schema { return $schema->components([ Select::make('status') ->options(Status::class), ]); } } ?>

Само перечисление зададим со строковыми значениями draft и published:

<?php namespace App\Enums; enum Status: string { case Draft = 'draft'; case Published = 'published'; } ?>

Соберите список статуса работника из перечисления PHP.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить