| 1234567891011121314151617 |
- from django.db.models import OuterRef, Subquery
- from utilities.querysets import RestrictedQuerySet
- class CircuitQuerySet(RestrictedQuerySet):
- def annotate_sites(self):
- """
- Annotate the A and Z termination site names for ordering.
- """
- from circuits.models import CircuitTermination
- _terminations = CircuitTermination.objects.filter(circuit=OuterRef('pk'))
- return self.annotate(
- a_side=Subquery(_terminations.filter(term_side='A').values('site__name')[:1]),
- z_side=Subquery(_terminations.filter(term_side='Z').values('site__name')[:1]),
- )
|