Скрытие по условию в Filament
Давайте скроем поле по условию. Лишняя строка не мешает, пока флажок снят, и появляется только когда запись готовят к публикации. Смотрим на /admin/posts/create.
Метод hidden принимает
замыкание с Get и
возвращает, нужно ли убрать
компонент с экрана. Живой
чекбокс пересчитывает видимость
сразу после щелчка.
Свяжем is_published
и поле слага в PostForm.php:
<?php
namespace App\Filament\Resources\Posts\Schemas;
use Filament\Forms\Components\Checkbox;
use Filament\Forms\Components\TextInput;
use Filament\Schemas\Components\Utilities\Get;
use Filament\Schemas\Schema;
class PostForm
{
public static function configure(Schema $schema): Schema
{
return $schema->components([
Checkbox::make('is_published')
->live(),
TextInput::make('slug')
->hidden(fn (Get $get): bool => ! $get('is_published')),
]);
}
}
?>
Покажите поле табельного номера работника только когда отмечено, что он активен.