РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
100 of 818 menu

Лукап contains

Лукап contains применяется к полям модели для поиска записей, содержащих указанную подстроку. По умолчанию поиск чувствителен к регистру, поэтому для поиска без учёта регистра используется лукап icontains. Лукап работает с полями типов CharField, TextField и другими текстовыми полями. Аргументы передаются в виде ключевого параметра, где ключ - это имя поля с суффиксом __contains, а значение - искомая подстрока.

Синтаксис

Model.objects.filter(field__contains='substring')

Пример

Пусть у нас есть модель Article с полем title. Найдём статьи, заголовок которых содержит слово "Django":

from myapp.models import Article articles = Article.objects.filter(title__contains='Django') for article in articles: print(article.title)

Результат выполнения кода:

"Working with Django" "Django best practices" "Advanced Django"

Пример

Найдём статьи, в содержании которых встречается фраза "database":

from myapp.models import Article articles = Article.objects.filter(content__contains='database') for article in articles: print(article.title)

Результат выполнения кода:

"Database optimization" "Using database"

Пример

Найдём статьи с точным совпадением заголовка, содержащего "SQL" (чувствительно к регистру):

from myapp.models import Article articles = Article.objects.filter(title__contains='SQL') res = articles.values('title', 'id') for item in res: print(item)

Результат выполнения кода:

{'id': 5, 'title': 'SQL performance'} {'id': 8, 'title': 'SQL vs NoSQL'}

Смотрите также

  • лукап icontains,
    который выполняет поиск подстроки без учёта регистра
  • лукап startswith,
    который ищет записи, начинающиеся с указанной подстроки
  • лукап endswith,
    который ищет записи, заканчивающиеся на указанную подстроку
  • лукап exact,
    который выполняет точное совпадение со строкой
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить