当前位置: 首页 > 知识库问答 >
问题:

根据类别不同的字段

郑卜鹰
2023-03-14

我正在尝试使用elasticsearch搜索产品。例如,如果产品是汽车,它将有一些字段,如“颜色”,“品牌”,“型号”,“公里”,……如果它是衣服,它将只有“颜色”,“尺寸”,……我想在弹性索引所有这些信息,以便能够搜索公里在aaa公里和bbb公里之间的汽车,和/或xxxx型号,相同的衣服或任何其他产品。

如何在elasticsearch中创建这样的字段?我希望所有的产品在相同的索引,这样用户可以搜索所有的产品,但如果用户搜索一个类型的产品,那么他应该能够指定一些更多的细节,根据这类产品。

我在想数组字段,但这是否意味着所有产品都将有对应于所有类型产品的所有字段,即使某些字段与某些产品不相关(即衣服将有km字段??)?或者在索引上是否可以将所需的信息对应于每个产品?

谢谢

共有1个答案

长孙淳
2023-03-14

可以使用类型。创建一个名为car的类型,包含颜色、品牌、型号、k等字段,然后创建一个名为blood的类型,包含颜色、大小等字段。

一个索引可以有许多类型。以下两个链接可能对您有所帮助:

>

  • 创建索引

    创建类型并映射到索引

    您可以轻松地跨类型搜索,从而可以发出如下搜索,以返回该索引中所有类型的所有文档:

    curl -XGET http://localhost:9200/_search?pretty=true -d '{"query":{"matchAll":{}}}'
    

    附加信息-跨类型搜索

    拥有一个数组字段不是一个好主意,因为您不会利用elasticsearch的能力来索引半结构化文档。

    万事如意。

  •  类似资料:
    • 我有两个Pydantic模型(< code>var1和< code>var2)。< code>PostExample方法的输入可以接收第一个模型或第二个模型的数据。使用< code>Union有助于解决这个问题,但是在验证期间,它会对第一个和第二个模型都抛出错误。 如何使其在填写字段时发生错误时,仅为某个模型返回验证器错误,而不是同时为两个模型返回?(如果有帮助,可以通过字段A的长度来区分模型)。

    • 我有一张清单: 我想有这样的结果:

    • 下面,我有一个全局应用的日志回溯配置。 我想全局使日志记录级别错误,除了一个类。对于一个特定的类,我想使日志记录级别 INFO。我该怎么做?

    • 本文向大家介绍django admin 根据choice字段选择的不同来显示不同的页面方式,包括了django admin 根据choice字段选择的不同来显示不同的页面方式的使用技巧和注意事项,需要的朋友参考一下 我就废话不多说了,大家还是直接看代码吧! 一、举例 二、admin.py 补充知识:Django之自定义用户权限(自定义RBAC组件) RBAC组件 rbac 组件一般我们用于权限的校

    • 问题内容: 这是表结构 我如何将表格显示为 上表显示升序I​​D,后跟与该ID相关联的parent_id,然后转到第二个ID,依此类推。我需要在单个查询中,是否可以这样做? 问题答案: 试试这个: http://sqlfiddle.com/#!2/9b05f/3 编辑: 鉴于这个答案一直在不断增加,我重新考虑了这个问题并发现了一个缺陷。如果由于某种原因,父级的ID高于子级的ID,则排序会混乱。仅当

    • 我有一个电子商务网站,我想为不同的子类别相同的鼻涕虫。例如: 首先,我在产品中创建男性父类别。它的鼻涕虫是男人,它的url是网站_url/men 但我需要子类别url,如: