入门
Filament 允许您为管理面板创建完全自定义的页面。
创建页面
要创建新页面,您可以使用:
php artisan make:filament-page Settings
此命令将创建两个文件
页面类整个都是 Livewire 组件,带有一些可以与管理面板一起使用的额外实用程序。
在导航中根据条件隐藏页面
shouldRegisterNavigation()
您可以通过覆盖 Page 类中的方法来防止页面出现在菜单中。如果您想控制哪些用户可以在侧边栏中看到该页面,这将很有用。
protected static function shouldRegisterNavigation(): bool
{
return auth()->user()->canManageSettings();
}
请注意,所有用户仍然可以通过其直接 URL 访问此页面,因此要完全限制访问,您还必须检查 mount()
页面的方法:
public function mount(): void
{
abort_unless(auth()->user()->canManageSettings(), 403);
}
定制
Filament 将根据页面名称自动为您的页面生成标题、导航标签和 URL(slug)。您可以使用页面类的静态属性覆盖它:
protected static ?string $title = 'Custom Page Title';
protected static ?string $navigationLabel = 'Custom Navigation Label';
protected static ?string $slug = 'custom-url-slug';
您还可以为任何页面指定自定义页眉和页脚视图。getHeader()
您可以从和方法中返回它们 getFooter()
:
use Illuminate\Contracts\View\View;
protected function getHeader(): View
{
return view('filament.settings.custom-header');
}
protected function getFooter(): View
{
return view('filament.settings.custom-footer');
}
推荐文章: