elasticquent / Elasticquent paginate问题,它返回所有数据

时间:2016-08-21 11:14:53

标签: laravel elasticsearch laravel-5 pagination laravel-5.2

我正在使用弹性/弹性' Laravel 5.2的elasticsearch包

这是我的代码

 $videos = Video::searchByQuery(['match_all' => []],null, null, 300, null, ['id' => 'desc']) ->paginate(42);

我想获得最后300件物品,每页分页42件, 但它仍然会返回所有300个项目,而不是42个。 有谁知道如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

如文档here中所述,您可以使用以下函数进行查询:

public static function searchByQuery(
    $query = null, 
    $aggregations = null, 
    $sourceFields = null, 
    $limit = null, 
    $offset = null, 
    $sort = null
)

参数4($limit)和5($offset)可用于创建分页。

在您的情况下,以下查询将从偏移量0为您提供42个结果。

$videos = Video::searchByQuery(['match_all' => []],null, null, 42, 0, ['id' => 'desc']);

答案 1 :(得分:0)

有弹性/有弹性分页问题

在此包中,分页函数与laravel中的分页函数具有相同的名称。 按住CTRL键并单击功能,然后使用它,即可更改名称分页功能。