suenerds/nova-searchable-belongs-to-filter

用于属于关系的可搜索 Nova 过滤器。

v2.0.2 2024-02-02 11:07 UTC

README

用于属于关系的可搜索 Nova 过滤器。

⚠️⚠️⚠️ 注意 ⚠️⚠️⚠️

在 Nova 4 中不需要此包,您可以使用以下方式实现相同的行为

BelongsTo::make('User')
    ->searchable()
    ->filterable(),

演示

demo

先决条件

此包假设您已为 Eloquent 模型设置了文本搜索。请参阅 Laravel Scout

安装

composer require suenerds/nova-searchable-belongs-to-filter

用法

在此示例中,假设一个用户属于一个部门,一个部门有多个用户。要使此关系可通过过滤器进行搜索,请将以下内容添加到您的 Nova 用户资源的 filters() 函数中

默认情况下,过滤器将显示您在实例化时传入的 fieldAttribute 的名称。您可以通过将名称作为参数传递给过滤器的构造函数来自定义名称,例如 my-new-name

// app/Nova/User.php

use Suenerds\NovaSearchableBelongsToFilter\NovaSearchableBelongsToFilter

public function filters(Request $request)
{
    return [
	(new NovaSearchableBelongsToFilter('my-new-name'))
	    ->fieldAttribute('department')
	    ->filterBy('department_id')
    ];
}