clickspaceio/laravel-eloquent-rest-filter

This package is abandoned and no longer maintained. No replacement package was suggested.
There is no license information available for the latest version (0.1.0) of this package.

Maintainers

Package info

github.com/clickspaceio/laravel-eloquent-rest-filter

pkg:composer/clickspaceio/laravel-eloquent-rest-filter

Statistics

Installs: 34

Dependents: 0

Suggesters: 0

Stars: 1

Open Issues: 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

Instalação

  1. O pacote deve ser instalado pelo Composer. Para instalar, basta executar o comando abaixo.

    composer require clickspaceio/laravel-eloquent-rest-filter
  2. Nos métodos dos Controllers com retorno de listagem, seguir o exemplo abaixo:

    $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);