koutech/class-base-filter

基于类的过滤器,是 spatie-query-builder 的顶层,并具有其他特性。

v1.0 2020-06-04 14:27 UTC

This package is auto-updated.

Last update: 2024-09-22 23:13:21 UTC


README

composer require koutech/class-base-filter

类基过滤器

  • 进入应用文件夹,创建一个名为 Filter 的文件夹
  • 创建一些类,例如 UserFilter.php

在 Filter 类内部

你所需要做的就是仅扩展 Koutech\TopLayerForSpatieQueryBuilder\Filter 在类中至少包含两个方法 fieldsmodel

<?php 

namespace App\Filter;

use Koutech\TopLayerForSpatieQueryBuilder\Filter;

use App\User;


class UserFilter extends Filter
{

    public function model() 
    {
        return User::class;
    }
    
    public function fields() 
    {
        return ['name'];
    }


}

用法

<?php

$users = UserFilter::filter()->get();

设置预加载

包含名为 include 的方法 示例:如果你想包含属于用户的帖子,你只需要...

<?php 

public function eagerLoading() 
{
    return ['post'];
}

从 URL 设置预加载

包含名为 include 的方法 示例:如果你想包含属于用户的帖子,你只需要...

<?php 

public function includes() 
{
    return ['post'];
}