如何使用Haystack / Whoosh在Django中使用下划线索引字符串

时间:2014-03-21 12:41:18

标签: django django-haystack whoosh

我正在尝试在Django项目中使用Haystack和Whoosh实现搜索。

我尝试索引的CharField包含something_like_this等数据。但如果我搜索“某事物”或“这个”,搜索结果中就不会显示出来。它只有在我搜索'something_like_this'时才有效。无论如何都要搜索CharFiled中的关键字?

我能想到的只是创建另一个CharField,存储没有原始字符串下划线的字符串,然后将其编入索引。但这似乎是一个愚蠢的想法。

1 个答案:

答案 0 :(得分:0)

data_field成为MultiValueField并实施prepare_data_field方法,您可以执行以下操作:

prepare_data_field(self, obj):
    return obj.data_field.split('_')