ALTER SEARCH INDEX CONFIG ON table ADD
searchComponent[@name='suggest',@class='solr.SuggestComponent']
WITH $$ {"suggester":[{"name":"titleSuggester"},
{"lookupImpl":"AnalyzingInfixLookupFactory"},
{"dictionaryImpl":"DocumentDictionaryFactory"},
{"suggestAnalyzerFieldType":"TextField"},
{"field":"title"}, {"weightField":"rating"},
{"buildOnCommit":"false"}, {"exactMatchFirst":"true"},
{"contextField":"country"}]} $$;
ALTER SEARCH INDEX CONFIG ON table ADD
requestHandler[@name='/suggest',@class='solr.SearchHandler']
WITH $$ {"defaults":[{"suggest":"true"},
{"suggest.count":"10"}],"components":["suggest"]} $$;
1条答案
按热度按时间egdjgwm81#
是的,这是可能的,而且相对容易--您只需要了解如何将要放入生成的
solrconfig.xml
中的XMLMap到用于配置的JSON中。例如,我们希望配置sugestor对
title
字段中的数据提供建议,并使用rating
字段中的附加权重。根据Solr documentation,XML片段应如下所示:在CQL中,它将被转换为
在此之后,您不必忘记执行:
在我的例子中,建议器的索引应该显式构建,因为库存不会经常变化,这是通过HTTP调用完成的,如下所示:
但是你可以通过将
buildOnCommit
设置为true来控制它,或者你可以配置它在启动时建立suggestor索引,等等--参见Solr的文档。完整的示例在这里-这是一个电子商务应用程序的示例。