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

Лукап lte

Лукап lte (less than or equal) применяется в запросах к базе данных для фильтрации записей, у которых значение заданного поля меньше или равно указанному значению. Этот оператор поиска используется в сочетании с методом filter или exclude и указывается через двойное подчеркивание после имени поля. Лукап работает с числовыми полями, датами, временем и другими типами данных, для которых определена операция сравнения.

Синтаксис

Model.objects.filter(field__lte=value)

Где field - имя поля модели, а value - значение, с которым производится сравнение. В результат попадают записи, у которых значение поля меньше или равно value.

Пример

Рассмотрим модель Product с полем price. Найдем товары с ценой не более 1000 рублей:

from myapp.models import Product cheap_products = Product.objects.filter(price__lte=1000) for product in cheap_products: print(product.name)

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

"Mouse" "Keyboard" "USB Hub"

Пример

Используем лукап lte с полем даты. Найдем заказы, оформленные до 1 января 2025 года:

from myapp.models import Order from datetime import date old_orders = Order.objects.filter(created_at__date__lte=date(2025, 1, 1)) for order in old_orders: print(order.id)

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

1001 1002 1003

Пример

Лукап lte можно комбинировать с другими условиями. Найдем товары с ценой от 500 до 1000 рублей:

from myapp.models import Product products = Product.objects.filter( price__gte=500, price__lte=1000 ) for product in products: print(f"{product.name}: {product.price}")

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

"Keyboard: 800" "Monitor: 1000"

Пример

Используем lte для фильтрации по связанным моделям через отношения. Найдем категории, у которых хотя бы один товар дешевле 500 рублей:

from myapp.models import Category categories = Category.objects.filter( product__price__lte=500 ).distinct() for category in categories: print(category.name)

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

"Electronics" "Accessories"

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

  • лукап lt,
    который находит значения строго меньше указанного
  • лукап gte,
    который находит значения больше или равно указанному
  • лукап gt,
    который находит значения строго больше указанного
  • лукап range,
    который находит значения в заданном диапазоне
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить