Распространенные методы фильтрации в Django: подробное руководство

  1. filter(): этот метод используется для извлечения подмножества объектов из набора запросов на основе заданных условий.

Пример использования:

filtered_data = MyModel.objects.filter(field__icontains='django')
  1. exclude(): этот метод используется для исключения объектов из набора запросов на основе заданных условий.

Пример использования:

filtered_data = MyModel.objects.exclude(field__icontains='django')
  1. get(): этот метод извлекает один объект из набора запросов, соответствующий указанным условиям. Вызывает исключение, если обнаружено несколько объектов или ни один объект не найден.

Пример использования:

single_object = MyModel.objects.get(id=1)
  1. точный: этот поиск используется для точного соответствия при фильтрации.

Пример использования:

filtered_data = MyModel.objects.filter(field__exact='value')
  1. содержит: этот поиск используется для выполнения проверки сдерживания с учетом регистра при фильтрации.

Пример использования:

filtered_data = MyModel.objects.filter(field__contains='value')
  1. icontains: этот поиск используется для выполнения проверки сдерживания без учета регистра при фильтрации.

Пример использования:

filtered_data = MyModel.objects.filter(field__icontains='value')
  1. startswith и istartswith: эти запросы используются для сопоставления префиксов с учетом и без учета регистра при фильтрации соответственно.

Пример использования:

filtered_data = MyModel.objects.filter(field__startswith='prefix')
filtered_data = MyModel.objects.filter(field__istartswith='prefix')