0
我为我的Laravel应用程序使用ES以搜索表格/类型。Elasticsearch查询字符串中的空值
我的用户可以搜索总共5列,这意味着总共可以有31个查询组合。
所以我的问题是现在,如果我可以使用相同的查询,但不提供ES所有的搜索参数。或者以某种方式编写动态查询。
如:
'filtered' => [
'query' => [
'match' => ['title' => Input::get('query')]
],
'filter'=> [
'bool' => [
'must' => [
['term' => [ 'type' => 1] ],
['term' => [ 'state' => 22] ],
['term' => [ 'city' => ] ], (empty)
[
'range' => [
'price' => [
'gte' => , (empty)
'lte' => , (empty)
]
]
]
]
]
],
],
否则我必须写31个不同的这个查询的组合 - 如果ES不要有任何可以帮助我。我可以使用Laravels雄辩的ORM。
在此先感谢
我正在使用那个包。但它不像ORM口才。 $ books = Book :: searchByQuery(array('match'=> array('title'=>'Moby Dick'))); 用户可以通过过滤5个不同的值来搜索/过滤产品。如果我会匹配每种类型的组合,这意味着我将不得不编写31个组合/查询并仅使用所需的组合 – user2722667 2015-02-24 21:01:19