Ресурс плагина в Filament
Давайте добавим ресурс плагина.
Список постов
откроется
/admin/posts,
если плагин
сам передаст класс
ресурса панели
в методе register.
Ресурс PostResource
уже лежит в проекте.
Подключим его
рядом со страницей
отчёта в BlogPlugin.php:
<?php
namespace App\Filament\Plugins;
use App\Filament\Pages\ReportPage;
use App\Filament\Resources\Posts\PostResource;
use Filament\Contracts\Plugin;
use Filament\Panel;
class BlogPlugin implements Plugin
{
protected ?string $color = null;
public function getId(): string
{
return 'blog';
}
public static function make(): static
{
return app(static::class);
}
public function color(string $color): static
{
$this->color = $color;
return $this;
}
public function getColor(): ?string
{
return $this->color;
}
public function register(Panel $panel): void
{
$panel
->pages([
ReportPage::class,
])
->resources([
PostResource::class,
]);
}
public function boot(Panel $panel): void
{
}
}
?>
Провайдер панели
по-прежнему вызывает
только plugin:
пункт меню для таблицы
появится без правки
AdminPanelProvider.php.
Пусть плагин сам добавит в меню список работников.