tomatophp / filament-api
使用一行代码从您的filament资源生成API
v1.0.2
2024-09-23 15:37 UTC
Requires
- php: ^8.1|^8.2
- calebporzio/sushi: *
- filament/filament: ^3.0.0
- tomatophp/console-helpers: ^1.1
This package is auto-updated.
Last update: 2024-09-23 15:38:17 UTC
README
资源API生成器
使用一行代码从您的filament资源生成API
安装
请确保您的PHP配置中已安装SQLite3驱动,因为此包需要它进行缓存。
composer require tomatophp/filament-api
如果您想使用API资源列出您的生成API,可以在 /app/Providers/Filament/AdminPanelProvider.php
上注册插件
->plugin(\TomatoPHP\FilamentApi\FilamentAPIPlugin::make())
屏幕截图
用法
您可以通过向您的资源页面添加此特性来生成API
use TomatoPHP\FilamentApi\Traits\InteractWithAPI; use \Filament\Resources\Pages\ListRecords; class ListPosts extends ListRecords { use InteractWithAPI; }
就是这样,现在您可以通过 /api/{slug}
访问您的API
我们提供了5种方法
- GET
/api/{slug}
列出所有记录支持通过 search= 进行搜索
- GET
/api/{slug}/{id}
获取单个记录 - POST
/api/{slug}
创建新记录 - PUT
/api/{slug}/{id}
更新记录 - DELETE
/api/{slug}/{id}
删除记录
自定义API
您可以通过重写这些方法来自定义API
// Use to return API JSON Resource on Index/Show/Store/Update public static function getFilamentAPIResource(): ?string { return null; } // Use To Custom Your Route Middleware public static function getFilamentAPIMiddleware(): array { return config('filament-api.default_middleware'); } // Use To Change the Endpoint Slug public static function getFilamentAPISlug(): ?string { return null; }
发布资产
您可以使用此命令发布配置文件
php artisan vendor:publish --tag="filament-api-config"
其他Filament包
查看我们的 Awesome TomatoPHP