Задать вопрос

Как реализовать поиск по подстроке в строке из модели без учёта регистра в sqlite на кириллице?

У меня есть модель с полем CharField:
class catalogModel(models.Model):
    title = models.CharField('Name', max_length = 100, null = True)

и мне нужно осуществить поиск по моделям catalogModel с помощью поля title без учёта регистра
# поисковой запрос
search = request.GET['search']
catalogModel.objects.filter(title__icontains = search)


Только вот проблема, что "__icontains" работает не корректно в "sqlite" с кириллицей (учитывает регистр, хоть и не должен).
Я думал фильтровать по title переводя в верхний регистр его и поисковой запрос, типа:
# поисковой запрос
search = request.GET['search']
catalogModel.objects.filter(title__ВЕРХНИЙ_РЕГИСТР__icontains = search.upper())
  • Вопрос задан
  • 537 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
alfss
@alfss
https://career.habr.com/alfss
Сделать доп поле. В нем все приводить к нижнему регистру и искать по нему.

Еще можно создать title как COLLATE NOCASE
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Strikt Москва
от 100 000 до 180 000 ₽
Sim-Ba Pay Санкт-Петербург
от 180 000 ₽
Крона Лабс Екатеринбург
от 200 000 ₽