我正在尝试将elasticsearch的multi_field语法与Elastica结合使用。我创建了一个索引和一个映射,如下所示:
$mapping->setProperties(array(
'id' => array('type' => 'string', 'include_in_all' => true),
'title' => array('type' => 'string', 'include_in_all' => true),
'publisher' => array('type' => 'multi_field', 'include_in_all' => TRUE, 'fields' =>
array('publisherName' => array('type' => 'string', 'index' => 'analyzed'),
'untouched' => array('type' => 'string', 'index' => 'not_analyzed')
)
));
到目前为止,这么好。我可以对标题字段运行查询。
但是当我尝试在http://example.com:9200/_plugin/head/中查询字段“publisher”时,我无法选择字段发布者或创建结构化查询。我看,字段发布者不在索引中。
但我可以在publisher.untouched上构建方面,这非常有效。我的映射有什么问题?我需要搜索出版商。