“大小”和“自”必须应用于顶级查询,在这里您将丢失它们。
试试这个:
$queryString = new QueryString();$queryString->setFields(array('_all')) ->setDefaultOperator('OR') ->setQuery($terms);$custScoreQuery = new CustomScore();$custScoreQuery->setQuery($queryString);$custScoreQuery->setscript("_score * (doc['section.id'] == 7) ? 0.5 : 1");$query = new ElasticaQuery();$query->setQuery($custScoreQuery);$query->setSize($maxItems);$query->setFrom(($page - 1) * $maxItems);$index = $this->get('fos_elastica.index.search_en_gb');$results = $index->search($query);另外,打开Elastica中的日志,您将能够查看Json查询中是否存在“大小”和“偏移”。话虽这么说,分页当然可以与自定义分数一起使用。



