Встречается на собеседованиях • сегодня
Что такое оператор Q в Django ORM
Оператор Q в Django ORM позволяет создавать сложные SQL-запросы с использованием логических операторов (AND, OR, NOT). Он особенно полезен, когда нужно комбинировать условия в filter() или exclude().
Пример:
python
from django.db.models import Q
Ищем статьи, которые либо опубликованы, либо имеют заголовок "Важное"
Article.objects.filter(Q(published=True) | Q(title="Важное"))
Комбинирование условий
User.objects.filter(
Q(is_active=True) &
(Q(username__startswith='a') | Q(email__endswith='@example.com'))
)
text
Ключевые особенности:
- Поддерживает операторы `|` (OR), `&` (AND), `~` (NOT)
- Можно использовать для динамического построения запросов
- Работает с `filter()`, `exclude()`, `get()`
- Позволяет создавать более читаемые запросы по сравнению с обычными цепочками `filter()`
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы