Laravel Scout,搜索只得到 20 条

问题描述 投票:0回答:1

我正在使用 Laravel Scout,当我搜索并获取结果时,它只返回精确的 20 个项目,而实际上还有更多要获取,在我的例子中有 56 个项目。我怎样才能取回所有物品?
$products = Product::search($keyword)->get(); //this return 20 items

但是我数了一下,有56件

$products = Product::search($keyword)->count(); //this return 56 

我尝试通过使用 paginate() 方法并以大量数字作为参数来获取所有结果。然而,由于性能问题,这似乎是不可能的,而且数量可能会波动很大。

$products = Product::search($keyword)->paginate(1000000); //this is bad practice

在 Laravel Scout 中搜索时如何检索所有项目?

php laravel search full-text-search laravel-scout
1个回答
0
投票

对于需要全部结果且总条数不是很大的场景,可以根据结果条数动态设置分页。 但是,请谨慎使用这种方法,因为它对性能有潜在影响

$totalCount = Product::search($keyword)->count();
$products = Product::search($keyword)->paginate($totalCount);
© www.soinside.com 2019 - 2024. All rights reserved.