clickspaceio/laravel-eloquent-rest-filter

此包已废弃且不再维护。未建议替代包。
关于此包最新版本(0.1.0)无可用许可证信息。

0.1.0 2020-04-06 01:51 UTC

This package is auto-updated.

Last update: 2021-02-06 04:02:29 UTC


README

安装

  1. 该包应通过 Composer 安装。要安装,请运行以下命令。

    composer require clickspaceio/laravel-eloquent-rest-filter
  2. 在返回列表的控制器方法中,请参考以下示例

    $filter = new Filter([ // filtros ativos
        'name' => StringFilter::class,
        'description' => StringFilter::class,
        'hidden' => BooleanFilter::class,
        'default' => BooleanFilter::class,
        'acl' => JsonFilter::class,
        'metadata' => JsonFilter::class,
        'created_at' => DateFilter::class,
        'updated_at' => DateFilter::class
    ], [ // possibilidades de ordenação (ASC/DESC)
        'name',
        'description',
        'hidden',
        'default',
        'created_at',
        'updated_at'
    ], [ // campos para busca geral (?q=)
        'name',
        'description',
        'metadata'
    ]);
    
    $query = Catalog::query();
    
    $query->whereHas('account', function ($query) use ($accountId) {
        $query->where('id', $accountId);
    });
    
    $query = $filter->apply($query);
    
    $accounts = $query->paginate($filter->limit);
    
    return CatalogResource::collection($accounts);