sql >> Base de Datos >  >> RDS >> PostgreSQL

Django prefetch_relacionado con límite

Creo que ahora hay una solución en la nueva versión de django, ya que tenemos OuterRef y Subquery.

from django.db.models import OuterRef, Subquery, Prefetch

subqry = Subquery(Comment.objects \
    .filter(user_id=OuterRef('user_id')) \
    .values_list('id', flat=True)[:5])

User.objects.prefetch_related(
    Prefetch('comments', queryset=Comment.objects.filter(id__in=subqry)))