Использование username__icontains в Django для частичного сопоставления строк без учета регистра

В Django username__icontains— это фильтр поиска, который можно использовать для выполнения частичного сопоставления строк без учета регистра в поле имени пользователя в запросе к базе данных. Обычно он используется с Django ORM (объектно-реляционное сопоставление) при запросе моделей.

Вот пример использования username__icontainsв Django:

from django.contrib.auth.models import User
# Query the User model for usernames containing the string "john" (case-insensitive)
users = User.objects.filter(username__icontains='john')
# Iterate over the resulting queryset
for user in users:
    print(user.username)

В приведенном выше примере метод filter()используется для получения набора запросов объектов User, где поле имени пользователя содержит строку «john» без учета регистра. Это означает, что все имена пользователей, такие как «John», «johnDoe» или «JOHN_SMITH», будут совпадать.

Используя username__icontains, вы можете легко искать имена пользователей, не беспокоясь о чувствительности к регистру.