mawuekom / laravel-searchable
Laravel 包,用于简化 Eloquent 模型的搜索
v1.2.0
2022-04-21 14:31 UTC
Requires
- php: ^7.4|^8.0
- illuminate/support: ^8.0|^9.0
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
README
本包提供服务提供者和特性,以简化对 Eloquent 模型的搜索
安装
您可以通过 composer 安装此包
composer require mawuekom/laravel-searchable
用法
Laravel
前往 config/app.php,并在 providers 键中添加以下内容
'providers' => [ ... Mawuekom\LaravelSearchable\LaravelSearchableServiceProvider::class, ... ]
Lumen
前往 bootstrap/app.php,并在指定键中添加以下内容
// Add provider $app->register(Mawuekom\LaravelSearchable\LaravelSearchableServiceProvider::class);
继承自 Eloquent 模型的模型
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class Post extends Model { ... /** * The attributes that are mass assignable. * * @var array */ protected $fillable = [ 'title', 'content' ]; ... }
使用它来进行搜索
use App\Models\Post; Post::whereLike(['title', 'content'], 'Post title');
您还可以在模型中包含 Searchable 特性。
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; use Mawuekom\LaravelSearchable\Searchable; class Post extends Model { use Searchable; ... }
完成后,您可以进行如下搜索:
use App\Models\Post; Post::search(['title', 'content'], 'Post title') ->get();
完成即可享受。
测试
composer test
更新日志
有关最近变更的详细信息,请参阅 更新日志。
贡献
有关详细信息,请参阅 贡献指南。
安全和报告错误
如果您发现任何与安全相关的问题,请通过电子邮件 seddorephraim7@gmail.com 或在 Twitter 上联系我 @ephraimseddor,而不是使用问题跟踪器。
许可证
MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件。