【问题标题】:Solr escapes double quotes/exact match (Django via Scorched/Sunburnt)Solr 转义双引号/完全匹配(Django via Scorched/Sunburnt)
【发布时间】:2016-01-12 12:49:18
【问题描述】:

我正在通过 Scorched 使用 Django 查询 Solr 5.3 实例。只要我不问完全匹配的查询,这一切都很好。换句话说,

q=something something else

返回完全相同的结果:

q="something something else"

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

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

所以,换句话说," 字符被转义了。我是对的吗?我如何告诉 Solr,当我在双引号之间查询某些内容时,我想要精确匹配?

在 Solr 管理网页中,一切正常,即如果我搜索“其他东西”,我会得到正确的结果。

我不确定这是否是烧焦/晒伤问题。它是否与过滤器/标记器有关(例如 solr.MappingCharFilterFactory)?

谢谢

【问题讨论】:

    标签: django solr sunburnt


    【解决方案1】:

    我在 Github 上从 Scorched 的人那里收到了这个:

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

    Scorched 不会转义 DismaxString 中的任何字符....

    希望它可以帮助其他人。

    【讨论】:

      猜你喜欢
      • 2021-04-08
      • 1970-01-01
      • 1970-01-01
      • 2011-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-26
      • 1970-01-01
      相关资源
      最近更新 更多