javii-script/default-value-filterable

A Nova宏,可简化设置默认值并在字段上启用过滤功能。

1.0.0 2023-09-26 03:28 UTC

This package is auto-updated.

Last update: 2024-09-26 05:41:51 UTC


README

Latest Version on Packagist Total Downloads

screenshot 1

Nova字段默认过滤器宏是Laravel Nova的一个自定义宏,用于简化设置默认值和为字段启用过滤功能的过程。

要求

  • "php": "^7.3|^8.0"
  • "laravel/nova": "^4.0"

安装

您可以通过Composer安装此包

composer require javii-script/default-value-filterable

用法

要使用此宏,只需在Nova字段上调用defaultFilterable方法。以下是如何使用的示例

use Laravel\Nova\Fields\Field;

Field::macro('defaultFilterable', function ($callback, callable $filterableCallback = null) {
    $this->withMeta(['defaultValueCallback' => $callback]);
    $this->filterable($filterableCallback);
    return $this;
});

此宏使得为过滤器定义默认值变得简单,增强了您的Nova资源的功能。

示例

Text::make('Name')
    ->defaultFilterable(function () {
        return 'John Doe';
    })
    ->sortable(),

在这个例子中,当应用过滤时,'名称'字段将默认值为'John Doe'。

Text::make('Name')
    ->defaultFilterable(function () {
        return 'John Doe';
    }, function ($request, $query, $value, $attribute) {
        $query->where($attribute, 'LIKE', "{$value}%");
    })
    ->sortable(),

此外,第二个参数是一个回调函数,允许您自定义过滤应用的方式。