Своё правило в Filament
Давайте зададим своё правило. Условие можно описать кодом, когда готовых методов мало. Поле на /admin/posts/create.
Метод rule принимает
замыкание с проверкой. При
нарушении вызывают fail
с текстом ошибки.
В PostForm.php добавим
правило к полю title:
<?php
namespace App\Filament\Resources\Posts\Schemas;
use Filament\Forms\Components\TextInput;
use Filament\Schemas\Schema;
class PostForm
{
public static function configure(Schema $schema): Schema
{
return $schema->components([
TextInput::make('title')
->rule(function () {
return function (string $attribute, $value, \Closure $fail) {
if ($value === 'spam') {
$fail('This title is not allowed.');
}
};
}),
]);
}
}
?>
Сделайте так, чтобы имя работника не сохранялось, если в нём есть запрещённое слово.