Встречается на собеседованиях • сегодня

Что такое F объекты в Django

F-объекты в Django позволяют ссылаться на значения полей модели прямо в запросе, без необходимости загружать их в память. Они используются для сравнения полей между собой или выполнения операций на уровне базы данных.

Основные сценарии использования:

  • Сравнение полей одной модели (Entry.objects.filter(n_comments__gt=F('n_pingbacks')))
  • Обновление поля с использованием текущего значения (Product.objects.update(price=F('price') * 1.1))

Пример:

python
from django.db.models import F

# Увеличим рейтинг всех статей на 1
Article.objects.update(rating=F('rating') + 1)

# Найдем товары, где цена больше чем скидка
Product.objects.filter(price__gt=F('discount'))

F-объекты работают на уровне SQL, что делает операции эффективными, так как не требуется загружать объекты в память Python. Они поддерживают основные арифметические операции и некоторые функции базы данных.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы