kda / filament-blocks
3.0.1
2024-03-26 13:58 UTC
Requires
- fdt2k/laravel-package-service-provider: dev-dev-v2 ||^2.0
- filament/filament: ^3.0
Requires (Dev)
- laravel/framework: ^9.19
- laravel/pint: ^1.1
- orchestra/canvas: ^7.2
- orchestra/testbench: ^7.6
This package is auto-updated.
Last update: 2024-09-19 09:10:18 UTC
README
适用于Filament Builder字段的可重用块
此包是Z3d0X/filament-fabricator的局部分支,由Z3d0X创建
喜欢这个概念,但我需要将功能拆分为单独的包。
与kda/laravel-layouts配合良好
安装
您可以通过composer安装此包
composer require kda/filament-blocks
创建一个块
php artisan make:filament-block MyBlock
这将在你laravel文件夹中创建两个文件
- app/Filament/Blocks/MyBlock.php
- resources/views/components/filament-blocks/my.blade.php
获取块
在filament Builder表单中
BlockManager::getBlocks()
<?php
class PageResource extends Resource
{
public static function form(Form $form): Form
{
return $form
->schema([
Builder::make('content')
->blocks(BlockManager::getBlocksByClass(PageGroup::class))
]);
}
}
在你的blade模板中
只需调用blade组件来渲染所有块
<x-filament-blocks::blocks :blocks="$content" />
渲染块
你的块组件blade文件将接收所有表单数据作为属性。
你可以在你的Block的mutateData
函数中自定义发送到组件的数据
public static function mutateData(array $data): array
{
$data['post']= Post::find($data['post_id']);
return $data;
}
测试
composer test
变更日志
请参阅CHANGELOG以获取有关最近更改的更多信息。
贡献
请参阅CONTRIBUTING以获取详细信息。
安全漏洞
请查看我们如何报告安全漏洞的安全策略。
鸣谢
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。