如何解决如何在Laravel中结合标签和算法搜索
我有一个使用Spatie's tagging package的Laravel 7应用程序,还有一个通过其股票their standard library使用Laravel Scout integration进行Algolia搜索的应用程序。标签有两种搜索机制:
$items = Item::withAllTags(
$searchtags,Item::TAGTYPE_PRIMARY
);
这显然返回了一个雄辩的“作用域”,而不是我不太理解的构建器或集合。
然后将其用于阿尔戈利亚:
$items = Item::search($request->input('query'));
这将返回一个查询生成器,我可以在其上调用get()
来解决实际项目。
我想做的就是将两者结合起来,这样我就可以获得一组代表这两个结果集的交集的搜索结果。理想情况下,我想先做标签,因为它是本地标签,而且速度可能更快,然后让Algolia搜索结果集。
我曾尝试使用intersect
构建器助手,但这使我在搜索结果中无法使用paginate
,因为这是构建器功能,而不是集合功能。然后,我发现Spatie's collection macros,它向集合添加了分页,但是,它似乎无法按预期工作,并使通常由Blade的{{ $items->links() }}
创建的分页链接呈现为空。
我怎样才能做到最好?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。