我有这个查询不区分大小写的搜索:
groups = Group.objects.filter.filter(name__istartswith=query)
它适用于英文字符。但不适用于utf-8俄语字符(没有错误 - 只有区分大小写的搜索使用相同的代码) 我该怎么办?
UPD:作为测试数据库,我使用sqlite。我想这里有问题。 但可能有一些解决方法吗?
答案 0 :(得分:0)
摘自SQLite ICU Extension的文档:
这两个函数的SQLite内置实现仅提供英语中使用的26个字母的大小写映射。此扩展程序提供的基于ICU的功能可为所有范围的Unicode字符提供大小写映射。
ICU提供了两种类型的案例映射,“常规”案例映射和“特定于语言”。有关两者之间的区别,请参阅ICU文档。
本质上,您需要确保使用的是使用ICU支持编译的SQLite版本,以执行不区分大小写的排序规则。