FosElasticaBundle заполнить сериализатором не индексировать все поля

Я работаю с пакетом FOS Elastica и пытаюсь проиндексировать некоторые данные в Elasticsearch.

Я последовал за документом, поэтому я написал этот конф

fos_elastica:
clients:
default: { host: '%env(ELASTICSEARCH_HOST)%', port: '%env(ELASTICSEARCH_PORT)%' }
indexes:
app:
index_name: app
types:
user:
serializer:
groups: [elastica]
persistence:
driver: orm
model: AppBundle\Entity\User
provider: ~
country:
serializer:
groups: [elastica]
persistence:
driver: orm
model: AppBundle\Entity\Country
provider: ~

Затем внутри моих сущностей я добавил группу сериализации

use Symfony\Component\Serializer\Annotation\Groups;
...

/**
* @ORM\Table
* @ORM\Entity
*/
class Country
{
...

/**
* @var string
*
* @Groups({"elastica"})
*
* @ORM\Column(type="string", length=64, unique=true)
* @Assert\NotBlank
* @Assert\Length(max=64)
*/
private $name = '';
}

Затем, когда я запускаю fos:elastica:populate все работает хорошо, но все поле, где я положил elastica Группа сериализации не индексируется.

Я использую сериализатор Symfony и следил за официальными документами, но я не понимаю и не вижу, почему мои поля не индексируются.

Я пытался добавить

serializer:
serializer: serializer

или же

serializer: ~

Но я получаю ошибку

Неправильная строка действия / метаданных [3], ожидаемая START_OBJECT, но найденная [VALUE_STRING]

Когда я пытаюсь без сериализатора, все работает хорошо, и все определенные поля индексируются.

Кто-нибудь знал, как исправить эту ошибку? Все проблемы, которые я обнаружил в репозитории FosElastica GitHub, связаны с JMSSerializer.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector