2015-10-14 77 views
2

我通过Scorched查询Solr 5.3与Django的实例。这一切都很好,只要我不要求精确匹配查询。换句话说,Solr逃脱双引号/精确匹配(Django通过Scorched/Sunburnt)

q=something something else 

返回完全相同的结果为:

q="something something else" 

的罪魁祸首,据我所看到的,是Django的抛出在Solr的实际查询。事实上,对于第二种情况是这样的:

q=\"something\+something\+else\" 

因此,换句话说,在“字符转义我说得对我怎么告诉Solr的,当我查询双引号之间的事情我想要一个确切的?比赛?

在Solr管理网页,这一切运作良好,也就是说,如果我搜索“一些别的东西”我得到正确的结果。

我不知道这是一个烧焦/晒伤的问题或不。它与滤镜/标记器(例如solr.MappingCharFilterFactory)有什么关系吗?

感谢

回答

0

我已经在Github上收到这从烧焦的人:

from scorched.strings import DismaxString ... solr.query(q=DismaxString('"something something else"')

烧焦不会逃脱DismaxString内的任何字符....

希望它能帮助其他人。