kda/filament-blocks

3.0.1 2024-03-26 13:58 UTC

This package is auto-updated.

Last update: 2024-09-19 09:10:18 UTC


README

Latest Version on Packagist Total Downloads

适用于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)。请参阅许可证文件以获取更多信息。