craftcodery / laravel-searchable
Laravel Eloquent 模型可搜索特性
3.2.0
2024-03-26 22:05 UTC
Requires
- php: ^8.1
- laravel/framework: ^10.0|^11.0
README
此包可轻松搜索您的 Laravel 模型。
安装
您可以通过 composer 安装此包。
composer require craftcodery/laravel-searchable
使用方法
准备您的模型
为了通过模型进行搜索,您必须使用 Searchable
特性并添加 toSearchableArray
方法。
namespace App\Models; use Illuminate\Database\Eloquent\Model; use CraftCodery\Searchable\Searchable; class User extends Model { use Searchable; /** * Get the searchable data array for the model. * * @return array */ public function toSearchableArray() { return [ 'columns' => [ 'users.name' => 60, 'users.email' => 60, 'locations.city' => 40, ], 'joins' => [ 'locations' => [ 'users.location_id', 'locations.id' ], ], 'groupBy' => 'users.id' ]; } }
搜索模型
要搜索您的模型,只需使用 search
方法。
$users = User::search('john')->get();
配置搜索匹配器
您可以配置包使用的不同搜索匹配器和权重。
php artisan vendor:publish --tag=searchable-config
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件。