1
0
mirror of https://github.com/django/django.git synced 2025-06-05 03:29:12 +00:00

[4.1.x] Fixed #33958 -- Added imports to examples in "Expressions can reference transforms" section.

Backport of 411a6ec93a9b21e5ed1e9fc05b34f021288cd10c from main
This commit is contained in:
Iván Camilo Triviño López 2022-08-29 23:03:53 -05:00 committed by Mariusz Felisiak
parent e992703e07
commit 29fac6b616

View File

@ -701,15 +701,18 @@ Django supports using transforms in expressions.
For example, to find all ``Entry`` objects published in the same year as they For example, to find all ``Entry`` objects published in the same year as they
were last modified:: were last modified::
>>> from django.db.models import F
>>> Entry.objects.filter(pub_date__year=F('mod_date__year')) >>> Entry.objects.filter(pub_date__year=F('mod_date__year'))
To find the earliest year an entry was published, we can issue the query:: To find the earliest year an entry was published, we can issue the query::
>>> from django.db.models import Min
>>> Entry.objects.aggregate(first_published_year=Min('pub_date__year')) >>> Entry.objects.aggregate(first_published_year=Min('pub_date__year'))
This example finds the value of the highest rated entry and the total number This example finds the value of the highest rated entry and the total number
of comments on all entries for each year:: of comments on all entries for each year::
>>> from django.db.models import OuterRef, Subquery, Sum
>>> Entry.objects.values('pub_date__year').annotate( >>> Entry.objects.values('pub_date__year').annotate(
... top_rating=Subquery( ... top_rating=Subquery(
... Entry.objects.filter( ... Entry.objects.filter(