Назад к задачам
Junior — Senior
3

Подсчёт запросов к базе данных при использовании Django ORM

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Определите, сколько запросов к базе данных будет выполнено при выполнении следующего кода:

class Author(models.Model):
    first_name = models.CharField(max_length=128)
    last_name = models.CharField(max_length=128)
    is_active = models.BooleanField()

class Article(models.Model):
    author = models.ForeignKey(Author, on_delete=models.CASCADE)
    name = models.CharField(max_length=64)
    is_private = models.BooleanField()
    views = models.IntegerField()

articles = Article.objects.all()

private_articles = articles.filter(is_private=True)
public_articles = articles.filter(is_private=False)

articles = Article.objects.select_related('author').all()
for article in articles:
    print(article.author.first_name, article.author.last_name)

articles = Article.objects.all()
for a in articles:
    print(a.author_id)