文档类中的 ONGR ElasticSearchBundle 映射



我在我的Symfony项目中安装了ONGR ElasticSearchBundle。要搜索包含公司名称和描述的索引,索引名称为公司。它看起来像这样:

 "mappings": {
        "_doc": {
            "properties": {
                "id": {"type": "long"},
                "entityid": {"type": "long"},
                "entityname": {"type": "keyword"},
                "name": {"type": "text"},
                "street": {"type": "text"},
                "city": {"type": "text"},
                "zip": {"type": "long"},
                "ziptext": {"type": "keyword"},
                "regionisocode": {"type": "keyword"},
                "desc": {"type": "text"},
                "branch": {"type": "text"},
                "branchid": {"type": "long"},
                "foundingyear": {"type": "date"}
            }
        }
    }

然后我使用控制台工具创建了一个文档。

/**
 * Company
 *
 * @ESDocument()
 */
class Company
{
    /**
     * @var string
     *
     * @ESProperty(type="long", options={"index"="not_analyzed"})
     */
    private $id;
    /**
     * @var string
     *
     * @ESProperty(type="long", options={"index"="not_analyzed"})
     */
    private $entityid;
    /**
     * @var string
     *
     * @ESProperty(type="keyword", options={"index"="not_analyzed"})
     */
    private $entityname;
...

到目前为止,这似乎有效。与 ElasicSearch 主机的连接正在工作,但即使我执行 MatchAllQuery(( 也没有获得搜索结果,我想知道这是一个映射问题?梅比有人有提示吗?

真诚地

对你正在使用的工具没有任何经验(在 ES 旁边(,但你是否实际索引/插入了任何文档?

如果在本地运行 ES,请尝试:localhost:9200/companies/_search以验证是否有任何文档以及是否已实际创建索引。

您是否遵循了这些步骤?此外,您还可以在此处找到有关索引数据的更多信息。

祝您编码愉快! :D

相关内容

  • 没有找到相关文章

最新更新