Встречается на 1% собеседований по Python
Как получать данные из БД с помощью Django ORM
Для работы с базой данных в Django используется ORM (Object-Relational Mapping), которая позволяет взаимодействовать с БД через Python-код. Основные методы:
- Получение всех записей модели:
python
from myapp.models import MyModel
all_objects = MyModel.objects.all()- Фильтрация записей:
python
filtered_objects = MyModel.objects.filter(field_name='value')- Получение одной записи:
python
single_object = MyModel.objects.get(id=1) # или pk=1- Сложные запросы с Q-объектами:
python
from django.db.models import Q
objects = MyModel.objects.filter(Q(field1='value') | Q(field2='value'))- Выборка определенных полей:
python
values = MyModel.objects.values('field1', 'field2')- Сортировка:
python
ordered = MyModel.objects.order_by('field_name')- Агрегация:
python
from django.db.models import Count
count = MyModel.objects.aggregate(Count('id'))Важно: ORM лениво загружает данные - запрос выполняется только при реальном обращении к данным. Для оптимизации можно использовать select_related (для ForeignKey) и prefetch_related (для ManyToMany).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы