我网站上的内容标有可变长度的字符串,我想对这些标签进行分面搜索。例如,一个故事可能有标签,“内战”,“普通赠款”和“葛底斯堡之战”。我希望能够对确切的非标记化字符串进行分面搜索。
在我的search_index.py中,我定义了:
tags = MultiValueField(faceted=True, indexed=True)
我编辑了build_solr_schema生成的schema.xml,使标记成为字符串而不是文本:
<field name="tags" type="string" indexed="true" stored="true" multiValued="true" />
不幸的是,当我收到有关tags_exact的错误时:
Failed to add documents to Solr: [Reason: None]
ERROR: [doc=treelines_stories.story.1] unknown field 'tags_exact'
据我所知,tags_exact字段与Haystack的分面内部实现有关,但我该如何解决这个问题?
谢谢!
答案 0 :(得分:2)
search_index.py:
tags = MultiValueField(faceted=True)
schema.xml中:
<field name="tags" type="text" indexed="true" stored="true" multiValued="true" />
<field name="tags_exact" type="string" indexed="true" stored="true" multiValued="true" />