0

我想在 solr 上搜索一个字段,在写这个之前我搜索了很多,我的问题是我将 fieldType 名称块添加到我的 schema.xml,但是当我尝试定义一个字段时,solr 给了我一些错误,这是我的字段类型代码,

<fieldType name="text_general_edge_ngram" class="solr.TextField" positionIncrementGap="100">
        <analyzer type="index">
            <tokenizer class="solr.LowerCaseTokenizerFactory"/>
            <filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15" side="front"/>
        </analyzer>
        <analyzer type="query">
            <tokenizer class="solr.LowerCaseTokenizerFactory"/>
        </analyzer>
    </fieldType>

这些是我试图添加到 schema.xml 的字段

<field name="name" type="edge_ngram" indexed="true" stored="true"/>
<field name="name" type="edgengram" indexed="true" stored="true"/>
<field name="name" type="ngram" indexed="true" stored="true"/>
<field name="name" type="text_general_edge_ngram" indexed="true" stored="true"/>

我是solr的新手,任何帮助都会很棒,谢谢。

4

1 回答 1

0

重新阅读您的问题后,我看到了问题。您不能有四个字段都具有相同的名称。如果您真的需要上面定义的所有四个字段,我会将它们更改为以下内容:

 <field name="name1" type="edge_ngram" indexed="true" stored="true"/>
 <field name="name2" type="edgengram" indexed="true" stored="true"/>
 <field name="name3" type="ngram" indexed="true" stored="true"/>
 <field name="name4" type="text_general_edge_ngram" indexed="true" stored="true"/>

架构文件中字段的实际名称必须是唯一的。

于 2012-11-04T02:36:46.223 回答