laravel - elasticquent/elasticquent分页问题,​​它返回所有数据

标签 laravel elasticsearch laravel-5 pagination laravel-5.2

我正在为Laravel 5.2使用'elasticquent / Elasticquent'elasticsearch软件包

这是我的代码

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

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

最佳答案

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

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

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

在您的情况下,以下查询将为您提供42个结果,偏移量为0。
$videos = Video::searchByQuery(['match_all' => []],null, null, 42, 0, ['id' => 'desc']);

关于laravel - elasticquent/elasticquent分页问题,​​它返回所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39063559/

相关文章:

json - 有什么方法可以在 elasticsearch 服务器中导入 json 文件(包含 100 个文档)。?

elasticsearch - 使用Elasticsearch的Logstash:我正在使用Logstash将数据提取到ES索引中。但是现在我希望logstash运行24/7

javascript - laravel ajax 404页面未找到

php - Laravel 5.6,制作多个页面注册并将输入数据保存到 session

php - 批量更新获取行id

php - 在 Laravel 邮件中设置主题变量

spring-boot - ElasticSearchHighLevelClient springboot自动配置不起作用

laravel - 存储方法无法使用资源路由

Laravel & vue axios get 方法返回 Getters & Setters?

php - Laravel 5.3 中重定向路线