QuerySet в Django
QuerySet — это объект, который представляет коллекцию записей из базы данных. Он предоставляет интерфейс для фильтрации, сортировки и получения данных.
Основные методы QuerySet
- all() — получить все записи
- filter() — фильтрация записей
- exclude() — исключение записей
- order_by() — сортировка
- get() — получение одной записи
- first() — первая запись
- count() — количество записей
Примеры использования
1# Получить все статьи
2articles = Article.objects.all()
3
4# Фильтрация
5published_articles = Article.objects.filter(is_published=True)
6
7# Сортировка
8recent_articles = Article.objects.order_by('-created_at')
9
10# Цепочка методов
11articles = Article.objects.filter(
12 is_published=True
13).order_by('-created_at')[:5]
Ленивые вычисления
QuerySet использует ленивые вычисления — запрос к базе данных выполняется только тогда, когда данные действительно нужны.
Установка и настройка
Для работы с QuerySet установи Django:
FAQ
Как оптимизировать запросы QuerySet?
Используй select_related() и prefetch_related() для оптимизации запросов со связанными объектами.