0

我正在使用一个简单的开箱即用的 Django/Haystack/Whoosh 设置,仅用于自动完成目的,除了尝试搜索电子邮件地址外,一切正常。如果我输入joe,我将获得名称/电子邮件地址以 开头的所有对象joe,但如果我输入joe@,我不会只获得具有joe@电子邮件地址的对象。就好像@符号被忽略了,无论我是否逃避它。我在 Haystack 帮助或网络上的任何地方都找不到任何东西。如何让 Haystack(或者是 Whoosh?)识别@符号?

...
class ContactIndex(indexes.SearchIndex):
    text = indexes.EdgeNgramField(document=True, use_template=True)
    full_name = indexes.CharField(model_attr='full_name', null=True)
    email = indexes.CharField(model_attr='email', null=True)
...
4

1 回答 1

0

您需要在whoosh/qparser/default.py中查看 QueryParser

haystack 自身不解析查询字符串 whoosh_backend.py#L370

于 2013-01-23T14:31:34.687 回答