Компонент схемы в Filament
Давайте сделаем компонент схемы. Поле живёт в пакете и вставляется в форму ресурса как готовый блок схемы. Поле видно на /admin/posts/create.
Класс наследует
Field
и задаёт view
пакета.
Файл
GreetingInput.php
лежит в
src/Forms/Components:
<?php
namespace Acme\Greeting\Forms\Components;
use Filament\Forms\Components\Field;
class GreetingInput extends Field
{
protected string $view = 'greeting::components.greeting-input';
}
?>
Шаблон поля положим рядом с другими видами пакета:
<div>
<x-filament::input.wrapper>
<x-filament::input
type="text"
wire:model="{{ $getStatePath() }}"
/>
</x-filament::input.wrapper>
</div>
На
/admin/posts/create
добавим компонент
в PostForm.php:
<?php
use Acme\Greeting\Forms\Components\GreetingInput;
return $schema->components([
GreetingInput::make('greeting'),
]);
?>
Дайте вставить в форму поле из пакета.