Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Hybris中过滤Solr自动建议_Solr_Hybris - Fatal编程技术网

在Hybris中过滤Solr自动建议

在Hybris中过滤Solr自动建议,solr,hybris,Solr,Hybris,我正在尝试实现Solr上下文过滤,以根据类别值过滤自动建议结果。自动建议已通过拼写检查组件实现 schema.xml <field name="autosuggest" type="text_spell" indexed="true" stored="true" multiValued="true" /> <field name="autosuggest_en" type="text_spell_en" indexed="true" stored="true" multiVal

我正在尝试实现Solr上下文过滤,以根据类别值过滤自动建议结果。自动建议已通过
拼写检查组件实现

schema.xml

<field name="autosuggest" type="text_spell" indexed="true" stored="true" multiValued="true" />
<field name="autosuggest_en" type="text_spell_en" indexed="true" stored="true" multiValued="true" />
<field name="autosuggest" type="text_spell" indexed="true" stored="true" multiValued="true" />
<copyField source="autosuggest" dest="autosuggest_en" />
<fieldType name="text_spell" class="solr.TextField" positionIncrementGap="100">
            <analyzer>
                <tokenizer class="solr.StandardTokenizerFactory" />
                <filter class="solr.LowerCaseFilterFactory" />
            </analyzer>
</fieldType>
<field name="autosuggest_en" type="text_spell_en" indexed="true" stored="true" multiValued="true" />
        <fieldType name="text_spell_en" class="solr.TextField" positionIncrementGap="100">
            <analyzer>
                <tokenizer class="solr.StandardTokenizerFactory" />
                <filter class="solr.PatternReplaceFilterFactory" pattern="(['’])" replacement=" " />
                <filter class="solr.EnglishMinimalStemFilterFactory" />
                <filter class="solr.StopFilterFactory" words="lang/stopwords_en.txt" ignoreCase="true" />
                <filter class="solr.ManagedStopFilterFactory" managed="en" />
                <filter class="solr.SynonymFilterFactory" ignoreCase="true" synonyms="synonyms.txt"/>
                <filter class="solr.ManagedSynonymFilterFactory" managed="en" />
                <filter class="solr.LowerCaseFilterFactory" />
                <filter class="solr.TrimFilterFactory" />
                <filter class="solr.RemoveDuplicatesTokenFilterFactory" />
            </analyzer>
</fieldType>
<dynamicField name="*_string_mv" type="string" indexed="true" stored="true" multiValued="true" />
<searchComponent name="suggest" class="solr.SpellCheckComponent">
    <lst name="spellchecker">
        <str name="name">categorydic</str>
        <str name="classname">org.apache.solr.spelling.suggest.Suggester</str>
        <str name="lookupImpl">org.apache.solr.spelling.suggest.fst.AnalyzingInfixLookupFactory</str>
        <str name="dictionaryImpl">org.apache.solr.spelling.suggest.DocumentDictionaryFactory</str>
        <str name="field">autosuggest_en</str>
        <str name="contextField">allCategories_string_mv</str>
        <str name="buildOnStartup">false</str>
        <str name="buildOnCommit">false</str>
        <str name="suggestAnalyzerFieldType">text_spell_en</str>
        <str name="indexPath">${solr.core.dataDir}/suggesttest</str>
    </lst>
    </searchComponent>
    <requestHandler name="/suggest" class="solr.SearchHandler" startup="lazy">
        <lst name="defaults">
            <str name="spellcheck">true</str>
            <str name="spellcheck.dictionary">en</str>
            <str name="spellcheck.onlyMorePopular">true</str>
            <str name="spellcheck.count">5</str>
            <str name="spellcheck.collate">true</str>
        </lst>
        <arr name="components">
            <str>suggest</str>
        </arr>
    </requestHandler>

当我用
spellcheck.dictionary=categorydic
spellcheck.cfq=harddiskcategory
spellcheck.q=mytest
点击此URL时,它不会过滤结果。我得到了我的测试的所有匹配项

有线索吗


编辑:
Solr版本:5.3.0

Hybris Vesion:6.0

您必须查看impex文件的solr配置。类似于solr.impex的东西。在这里,您可以配置solr应该如何操作。我认为您也可以在那里配置AutoSugestion功能。

不,这与Hybris中的配置无关。OOTB Hybris不支持上下文筛选。