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

Метод contains

Метод contains применяется к QuerySet и возвращает новый QuerySet, содержащий объекты, у которых значение поля содержит указанную подстроку. Поиск выполняется с учётом регистра. Для регистронезависимого поиска используется метод icontains. Метод можно вызывать цепочкой для уточнения условий выборки.

Синтаксис

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

Пример

Давайте найдём все статьи, заголовок которых содержит слово "Django":

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

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

"article 1" "article 2"

Пример

Найдём все статьи, содержимое которых содержит подстроку "python" с учётом регистра:

from myapp.models import Article res = Article.objects.filter(content__contains='python') for article in res: print(f"Title: {article.title}, Content: {article.content[:50]}...")

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

"Title: Python basics, Content: This article covers Python programming..." "Title: Python advanced, Content: Dive deeper into Python features..."

Пример

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

from myapp.models import Article res = Article.objects.filter( author__contains='Petrov' ).order_by('created_at') for article in res: print(f"{article.author}: {article.title}")

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

"Ivan Petrov: Django basics" "Petr Petrov: Advanced Django"

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

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