alejandroakbal / laravel-scout-advanced-meilisearch
Laravel Scout 扩展,允许使用 meilisearch 的高级功能,并具有扩展的集合驱动程序,用于测试目的。
1.0.2
2023-04-25 12:42 UTC
Requires
- php: ^8.0 || ^8.1 || ^8.2
- laravel/framework: ^10.0.0
- laravel/scout: ^10.0.0
- meilisearch/meilisearch-php: ^1.0.0
Requires (Dev)
- orchestra/testbench: ^8.5
- roave/security-advisories: dev-latest
README
此包提供的内容
扩展的 Scout 查询构建器
添加以下更改到基本查询构建器
where('column', '<=', $value)- 扩展的 where,支持 3 个可选比较参数。也允许两个参数。where(Clusure $query)- where 可以将闭包作为第一个参数传入,以便分组查询(同样适用于orWhere)whereBetween('column', [$value1, $value2])whereNotIn('column', [$value1, $value2, $value3])- 所有 where 子句都有或变体:
orWhere、orWhereIn等
两个 Scout 驱动器
这些驱动器与新的 Scout 构建器兼容。
- meilisearch_advanced
- collection_advanced
meilisearch_advanced
使用 meilisearch 的所有优势来比较结果,在索引数组中进行搜索。还修复了计算总值的错误。(当前实现会在 Scout 构建器使用 ->query() 方法时请求整个数据集)
collection_advanced
该驱动器模仿 meilisearch 的工作方式,完全依赖于集合。它仅应用于测试,因为整个可搜索模型的数据都在内存中。该驱动器允许测试过滤和排序,以及扩展的 Scout 构建器功能。
如何使用?
- 在
config/scout.php中将'driver'设置为meilisearch_advanced或collection_advanced(用于测试)
开发
PHP
使用 Docker 运行 PHP
docker run --rm \
-u "$(id -u):$(id -g)" \
-v "$(pwd):/var/www/html" \
-w /var/www/html \
laravelsail/php82-composer:latest \
composer install
运行测试
docker run --rm \
-u "$(id -u):$(id -g)" \
-v "$(pwd):/var/www/html" \
-w /var/www/html \
laravelsail/php82-composer:latest \
composer test
发布
您可以使用以下方法发布包版本:
git tag -a 1.0.0 -m "First release"
git push --tags