5dmatwebsearch / advancesearch
laravel 的全文搜索...
dev-master
2018-02-09 05:01 UTC
Requires
- php: >=5.4.0
This package is not auto-updated.
Last update: 2024-09-20 09:13:15 UTC
README
描述
laravel 单个或多个字段上的全文搜索
安装
composer require 5dmatwebsearch/advancesearch:dev-master
添加服务提供者(在 config/app.php 中的 'providers' 部分)
AdvanceSearch\AdvanceSearchProvider\AdvanceSearchProvider::class,
添加别名(在 config/app.php 中的 'aliases' 部分)
'Search' => AdvanceSearch\AdvanceSearchProvider\Facades\SearchFacades::class,
添加索引
添加索引到字段
php artisan index:table table fields
table = 表名
fields = 你可以添加的字段。可以添加一个或多个字段,例如:title,description,tags
示例
php artisan index:table films title,description
搜索
现在你可以使用搜索功能了
Search::search(modelName , fields, searchText ,select , order , pagination , limit)
modelName = 表名
fields = 你可以添加的字段,如 title,description,tags
searchText = 你要查找的文本
select = 你想要返回的字段。你可以返回一个字段,例如:title。或者返回多个,例如:['title' , 'description']
order = 你可以传递一个排序字段,例如:id。或者你可以传递字段和方式,例如:['id' , 'desc']
pagination = 如果你想要启用分页,则为 true;如果不启用,则为 false。默认情况下,包会进行分页
limit = 你想要返回的结果数量。(默认为 10)
第一个示例带有分页
Search::search( "Films" , ['title' , 'description'] , "Drama Outback GOLDFINGER" , ['modelName' , 'title', 'description'], ['film_id' , 'asc'] , true , 30 )
第二个示例带有分页
Search::search( "Films" , ['title' , 'description'] , "Drama Outback GOLDFINGER" , ['id' , 'title', 'description'], 'film_id' )
不带分页的示例
Search::search( "Films" , ['title' , 'description'] , "Drama Outback GOLDFINGER" , ['film_id' , 'title', 'description'], 'film_id', false )->where('film_id' , 10)->get()