Foselasticabundle 对查询进行排序

Foselasticabundle 对查询进行排序,foselasticabundle,Foselasticabundle,我有一个查询要匹配ElasticSearch中的所有产品。它运行perfecty,但我想为这个查询添加一个排序。我没有找到运行的示例,也不明白它为什么会产生错误 此代码用于排序查询: $match = new \Elastica\Query\MatchAll(); $query = new \Elastica\Query($match); $query->addSort([ 'product.price' =>

我有一个查询要匹配ElasticSearch中的所有产品。它运行perfecty,但我想为这个查询添加一个排序。我没有找到运行的示例,也不明白它为什么会产生错误

此代码用于排序查询:

        $match = new \Elastica\Query\MatchAll();

        $query = new \Elastica\Query($match);
        $query->addSort([
            'product.price' => ['order' => 'asc']
        ]);
        return $this->find($query);
生成此错误:

错误:异常的参数错误([string$Exception[,long$code [,异常$previous=NULL]])

在发布这篇文章之前,我做了很多尝试,但错误总是一样的

弹性搜索:5.2.2

FosElasticaBundle:3.2.2

PHP:5.6.30


Symfony:2.8

此错误意味着ES、Elastica和FosElasticBundle之间不兼容。警告ES和基本PHP labrary Elastica

此代码可以完美运行:

$query = new Query();
$queryRange = new \Elastica\Query\Range('product.price', array('gt' => 0, 'lt' => 20));
$query->setQuery($queryRange);
return $this->find($query);
弹性搜索:1.7.4

FosElasticaBundle:3.2.2

PHP:5.6.30

Symfony:2.8