【问题标题】:Django: icontains case is sensitive for unicodeDjango:icontains 大小写对 unicode 敏感
【发布时间】:2023-03-27 12:03:02
【问题描述】:

我正在简单地搜索我的博客。我使用亚美尼亚语,当我搜索这些字母时,它总是很有意义。这是我的代码的一部分。提前谢谢你。

search_query = get.get('search')
query_list = search_query.split()
posts = post.objects.filter(
                reduce(operator.and_,
                       (Q(title__icontains=q) for q in query_list))|
                reduce(operator.and_,
                       (Q(content__icontains=q) for q in query_list)),
            )

【问题讨论】:

  • 你的数据库是什么,使用的排序规则是什么?
  • 我使用 sqlite3,但我没有设置它。我知道我必须这样做,但我必须设置哪些设置?
  • 恐怕你对 sqlite3 无能为力(至少没有什么值得痛苦的)。

标签: python django unicode django-models search-engine


【解决方案1】:

这通常只是 SQLite 的问题,问题在文档链接中有详细描述,也有返回原始 SQLite 站点描述的链接

来自 django icontains 文档

SQLite 用户

当使用 SQLite 后端和非 ASCII 字符串时,请记住 关于string comparisons的数据库注释。

SQLite documentation regarding following problem

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-23
    • 2016-05-30
    • 1970-01-01
    相关资源
    最近更新 更多