guava / filament-drafts
一个filament插件,增加了管理模型草稿和修订的能力。
2.1.1
2023-09-30 12:00 UTC
Requires
- filament/filament: ^3.0
- oddvalue/laravel-drafts: ^1.3
Requires (Dev)
- orchestra/testbench: ^8.0
README
filament草稿
此插件增加了在filament资源中管理模型草稿和修订的功能。
这是Laravel Drafts的filament实现。
drafts-preview.mov
安装
您可以使用composer安装此包
composer require guava/filament-drafts
使用方法
模型特质
首先确保您已正确设置模型以使用Laravel Drafts的草稿。
至少您需要将HasDrafts(请注意这是一个修改过的特质)特质添加到模型中
use Guava\FilamentDrafts\Concerns\HasDrafts; class Post extends Model { use HasDrafts; }
并修改您的迁移
return new class extends Migration { public function up(): void { Schema::create('posts', function (Blueprint $table) { //... $table->drafts(); }; } }
注意:如果您使用Laravel Drafts中的HasDrafts特质,请确保您已在$fillable属性中定义了is_published。
之后,您只需要在资源及其页面中添加一些特质
资源特质
将Draftable特质添加到您的资源中
use Guava\FilamentDrafts\Admin\Resources\Concerns\Draftable; class PostResource extends Resource { use Draftable; }
资源页面
将相应的Draftable特质添加到您的资源页面:请注意,每个页面都使用来自不同命名空间的不同特质
创建页面
use Guava\FilamentDrafts\Admin\Resources\Pages\Create\Draftable; class CreatePost extends CreateRecord { use Draftable; }
编辑页面
use Guava\FilamentDrafts\Admin\Resources\Pages\Edit\Draftable; class EditPost extends EditRecord { use Draftable; }
列表页面
use Guava\FilamentDrafts\Admin\Resources\Pages\List\Draftable; class ListPosts extends ListRecords { use Draftable; }
变更日志
请参阅变更日志以获取有关最近更改的更多信息。
贡献
请参阅贡献指南以获取详细信息。
安全漏洞
请审查我们的安全策略了解如何报告安全漏洞。
鸣谢
许可
MIT许可(MIT)。请参阅许可文件以获取更多信息。