exeko/laravel-simple-query-filter

一个简单的Trait,用于在模型中包含过滤器功能

v2.0 2020-09-24 11:47 UTC

This package is auto-updated.

Last update: 2024-09-24 20:35:24 UTC


README

一个简单的PHP Eloquent扩展,用于通用过滤器。

深受 https://github.com/AlexanderTersky/eloquent-query-filter 的启发,但提供了更好的关系支持

安装

$ composer require exeko/laravel-simple-query-filter
{
    "require": {
        "exeko/laravel-simple-query-filter": "^1.0"
    }
}

用法

我们的请求必须看起来像

/filter[column_name:operator]=something

一些真实生活中的例子

/api/users/?filter[name:like]=john
/api/users/?filter[age:>]=18&filter[age:<]=25
/api/users/?filter[gender:<>]=male

在您的模型中包含这个trait

<?php

use Illuminate\Database\Eloquent\Model;
use Exeko\QueryFilter\Filter;

class User extends Model
{
    use Filter;
}

控制器

$users=User::filter($request->input('filter'))->get();