thuyld_rabiloo / searchy
这是我的包 searchy
v1.0.0
2022-12-26 08:58 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^9.0
- spatie/laravel-package-tools: ^1.13.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^6.0
- orchestra/testbench: ^7.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpunit/phpunit: ^9.5
README
安装
您可以通过 composer 安装此包
composer require thuyld_rabiloo/searchy
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="searchy-config"
这是发布配置文件的内容
return [ 'default' => 'fuzzy', 'fieldName' => 'relevance', 'drivers' => [ 'fuzzy' => [ 'class' => 'Rabiloo\Searchy\SearchDrivers\FuzzySearchDriver', ], 'ufuzzy' => [ 'class' => 'Rabiloo\Searchy\SearchDrivers\FuzzySearchUnicodeDriver', ], 'simple' => [ 'class' => 'Rabiloo\Searchy\SearchDrivers\SimpleSearchDriver', ], 'levenshtein' => [ 'class' => 'Rabiloo\Searchy\SearchDrivers\LevenshteinSearchDriver', ], ], ];
使用方法
use Rabiloo\Searchy\Traits\Searchable; class SearchableModel extends Model { use Searchable; public function searchableColumns() { return ['field_1', 'field_2']; } }
默认搜索
$search = SearchableModel::search('keyword')->get();
模糊搜索
$search = SearchableModel::fuzzySearch('keyword')->get(); $search = SearchableModel::uFuzzySearch('keyword')->get();
简单搜索
$search = SearchableModel::simpleSearch('keyword')->get();
Levenshtein 搜索
$search = SearchableModel::levenshteinSearch('keyword')->get();
测试
composer test
变更日志
请查看 CHANGELOG 了解最近更改的信息。
贡献
请查看 CONTRIBUTING 了解详细信息。
安全漏洞
请审查 我们的安全策略 了解如何报告安全漏洞。
致谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。