簡體   English   中英

在symfony2項目中使用elasticsearch進行范圍過濾查詢

[英]Range Filter Query with elasticsearch in a symfony2 project

$mainQuery = new \Elastica\Query\BoolQuery();
$rangeFilter = new Filtered(
$mainQuery,
   new Range('price', array(
         'gte' => $min,
         'lte' => $max
    ))
  );
$data = $finder->search($rangeFilter);

在我的控制器 Action 中,我使用上面的代碼來過濾 $min、$max(傳遞給此控制器的變量)價格之間的 elasticsearch 數據。 不知何故,返回給我的數據對於我的查詢來說不是正確的結果。

我是否使用錯誤的方法來實現 FOSElasticaBundle 方法。 另外,如果有人可以分享一些關於如何在 symfony2 中使用 elasticsearch 或如何使用 FOSElasticBundle 進行查詢的鏈接或教程,那會很有幫助。

我是這樣做的...

 $boolQuery= new  Elastica\Filter\Bool();
        $boolQuery->addMust(new Range('created_at', array(
            'gte' => Util::convertDate($dataSearch['fechaInicial']),
            'lte' => Util::convertDate($dataSearch['fechafinal'])
        )));
        $result= $this->finder->find($boolQuery));

這個對我有用! 這里有更多細節! https://openclassrooms.com/forum/sujet/foselasticabundle-1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM