我正在尝试配置copyField,但文档对语法示例非常清楚。
这是我尝试做的,但重新导入我的所有数据后,“all”字段没有文档:
<field name="all" type="text_en_splitting" indexed="true" stored="false" multiValued="true" termVectors="true" version="1.5" />
<copyField source="id" dest="all"/>
<copyField source="item_name" dest="all"/>
<copyField source="item_brand" dest="all"/>
<copyField source="short_description" dest="all"/>
<copyField source="long_description" dest="all"/>
<copyField source="catalog_names" dest="all"/>
<copyField source="categories" dest="all"/>
<copyField source="keywords" dest="all"/>
<copyField source="attributes" dest="all"/>
我真正需要的是:
我有定义了所有这些字段的文档(id,item_name,短/长描述等)。
我想搜索大多数字段,但不存储值(我只返回文档ID)。
所以:
我目前没有任何查看某个特定字段的搜索。
答案 0 :(得分:1)
我是否需要为每个属性定义一个字段
如果要检索其值,则需要以任何方式定义所有字段。
我应该将它们全部复制到一个字段中,以便搜索所有这些字段吗?这是必要的吗? 您需要将它们复制到单个字段并搜索该字段。
有没有办法将所有这些字段导入一个solr字段?我的schema.xml应该怎么样?
您可以定义动态字段并使用单个副本字段将它们复制到单个字段
答案 1 :(得分:0)
似乎我在copyField中遇到的最大问题是我需要删除并重新加载索引才能启用它。添加替换现有文档的文档就足够了。