Как запросы django sql могут использовать регистр без учета регистра и contains одновременно?

#python #django

#python #django

Вопрос:

Предположим, у меня есть два пользователя с именем пользователя ‘AbA’ и ‘aBa’ в базе данных. Мое слово запроса ‘ab’.

Я использовал

User.objects.filter(username__contains='ab')

и

User.objects.filter(username__iexact='ab')

Эти два запроса получают пустой результат. Однако я хочу использовать что-то вроде username__contains__iexact='ab' , которое может извлекать как ‘AbA’, так и ‘aBa’.

Кто-нибудь знает, как решить эту проблему? Спасибо.

Ответ №1:

Использовать:

 User.objects.filter(username__icontains='ab')
  

Ответ №2:

icontains не учитывается регистр — http://docs.djangoproject.com/en/dev/ref/models/querysets/#std:fieldlookup-icontains