Elastica возвращает все записи вместо отфильтрованных значений

Я только начал играть с FOSElasticaBundle и у меня возникла первая проблема:)

В контроллере есть моя часть кода:

$finder = $this->container->get('fos_elastica.finder.app.report');
$boolQuery = new \Elastica\Query\BoolQuery();

$fieldQuery = new \Elastica\Query\MultiMatch();
$fieldQuery->setQuery($searchForm->get('comment')->getData().' '.$searchForm->get('description')->getData().' '.$searchForm->get('number')->getData());
$fieldQuery->setFields(array('number', 'comment', 'description'));

$boolQuery->addShould($fieldQuery);

$fieldRange = new \Elastica\Query\Range();
$fieldRange->addField('createdAt', ['gte' => $from, 'lte' => $to]);
$boolQuery->addFilter($fieldRange);

$results = $finder->find($boolQuery);

и часть эластика конфиг

fos_elastica:
clients:
    default: { host: %elastic_host%, port: %elastic_port% }
indexes:
    app:
        types:
            report:
                properties:
                    id:
                        type: integer
                    createdAt:
                        type: date
                    comment:
                        type: text
                    description:
                        type: text
                    number:
                        type: text
                persistence:
                    driver: orm
                    model: AppBundle\Entity\Report
                    provider: ~
                    finder: ~
                    listener: ~

Проблема в том, что я не могу искать только по строке или по строке и диапазону дат в одно и то же время. Если я ищу только по диапазону дат, это работает хорошо.

0 ответов

Другие вопросы по тегам