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