定制 heseya/laravel-searchable 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

heseya/laravel-searchable

Composer 安装命令:

composer require heseya/laravel-searchable

包简介

Search trait for Eloquent models

README 文档

README

Made by Heseya StyleCI Packagist Version Total Downloads Software License

🔍 Search trait for Eloquent models.

Installation

$ composer require heseya/laravel-searchables

How to use it?

class User extends Model
{
    use HasCriteria;

    protected $criteria = [
        'id', // default criterion
        'email' => Equals::class,
        'name' => Like::class,
        'description' => Custom::class,
    ];
}
class Controller
{
    function index(Request $request)
    {
        User::searchByCriteria([
            'email' => 'example@example.com',
            'name' => 'John'
        ])->get();

        // you can extend query

        User::searchByCriteria($request->all())
            ->where('public', true)
            ->get();
    }
}

Available criteria

  • Equals
  • Like

Custom criterion

final class CustomCriterion extends Criterion
{
    public function query(Builder $query): Builder
    {
        // do whatever you want

        return $query;
    }
}

Change default criterion in model

class User extends Model
{
    protected function getDefaultCriterion(): string
    {
        return Equals::class;
    }
}

Testing

To run the tests, run the following command from the project folder.

$ composer test

License

Package released under the MIT License. See the LICENSE file for details.

统计信息

  • 总下载量: 4.25k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 4
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-08-12

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固