2017-11-19 13 views
1

複数エンティティ検索を構築する必要があります。FosElasticaBundle:1つのインデックスに複数のタイプがあります

私はすべてのT1、そしてすべてのT2を望んでいません。

私はfos:lastica:populateを使用し、私はエラーを取得:

Rejecting mapping update to [search_dev] as the final mapping would have more than 1 type: [t1, t2]

マイマップ:

fos_elastica: 
    clients: 
     default: 
      host: %elastic_host% 
      port: %elastic_port% 
    indexes: 
     search: 
      finder: ~ 
      client: default 
      index_name: search_%kernel.environment% 
      types: 
       t1: 
        indexable_callback: 'getEnabled' 
        properties: 
         id: 
          type: integer 
         name: ~ 
        persistence: 
         driver: orm 
         model: AppBundle\Entity\T1 
         finder: ~ 
         listener: 
          logger: true 
         elastica_to_model_transformer: 
          ignore_missing: true 
       t2: 
        indexable_callback: 'getEnabled' 
        properties: 
         id: 
          type: integer 
         name: ~ 
        persistence: 
         driver: orm 
         model: AppBundle\Entity\T2 
         finder: ~ 
         listener: 
          logger: true 
         elastica_to_model_transformer: 
          ignore_missing: true 

マイサービス:

$search = $this->indexManager->getIndex('search')->createSearch(); 
$search->addType('t1'); 
$search->addType('t2'); 
$resultSet = $search->search($query); 

$results = $this->modelTransformer->transform($resultSet->getResults()); 

私が何かを見逃していましたか? 1つのインデックスに2つのタイプをマップできますか?

答えて

関連する問題