我在Laravel 5.4中遇到分页问题。我使用Scout和Algolia作为“驱动程序”。我分页的数据是从algolia通过提交从一个表单搜索和一切似乎工作-直到我打了一个结果超过34页。据我所知,前34页似乎工作得很好,但在第34页之后,事情似乎就变糟了。我是Laravel的新手,我喜欢不必从头开始编程分页的想法,但为什么会发生这种情况?
第1页结果:
看起来很好,一切似乎工作
第34页结果:
还在工作。。
第35页及以后:
34之后的所有内容显示0结果...
在这里,我的控制器中有一个函数来处理搜索:
public function search(Request $request)
{
$object = $request->input('query');
$results = Item::search($object)->paginate(30);
dd($results);
}
接下来我有一个模型:
namespace App;
use Laravel\Scout\Searchable;
use Illuminate\Database\Eloquent\Model;
class Item extends Model
{
use Searchable;
}
有趣的事实
我注意到的是,如果我将paginate(30)改为paginate(20),在失败之前我可以达到的最大页面是第50页。
1条答案
按热度按时间6kkfgxo01#
我有同样的问题,它似乎是下降到Algolia的结果限制1000项。要通过他们的API传递这个,需要设置paginationLimitedTo,但我不认为这可以通过scout设置。
https://www.algolia.com/doc/api-client/php/parameters/paginationLimitedTo/#paginationlimitedto
我添加了一个问题here