tomatophp/filament-api

使用一行代码从您的filament资源生成API

v1.0.2 2024-09-23 15:37 UTC

This package is auto-updated.

Last update: 2024-09-23 15:38:17 UTC


README

Screenshot

资源API生成器

Latest Stable Version License Downloads

使用一行代码从您的filament资源生成API

安装

请确保您的PHP配置中已安装SQLite3驱动,因为此包需要它进行缓存。

composer require tomatophp/filament-api

如果您想使用API资源列出您的生成API,可以在 /app/Providers/Filament/AdminPanelProvider.php 上注册插件

->plugin(\TomatoPHP\FilamentApi\FilamentAPIPlugin::make())

屏幕截图

APIs Resource

用法

您可以通过向您的资源页面添加此特性来生成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