Tengo un conjunto de consulta que es razonablemente complicado, que actualmente utilizo en una vista única para obtener una lista de objetos.¿Dónde colocar consultas comunes en Django?
Quiero usar el mismo queryset en un par de otras vistas, pero preferiría no solo copiar el código varias veces. Podría usar un administrador para mantener el conjunto de consulta en un solo lugar y usarlo en cada vista , excepto, la consulta se basa en una fecha que es diferente en cada página.
Según tengo entendido, los gerentes no le permiten pasar variables ... así que me pregunto dónde debería poner esta consulta para no seguir repitiéndola en varias vistas. ¿Alguna idea?
Fwiw, esta es mi queryset y published_date es la variable que cambia en cada página:
day_publications = Publication.objects.filter(
Q(reading__end_date__gte=published_date) | Q(reading__end_date__isnull=True),
reading__start_date__lte=published_date,
).select_related('series',)
Doh, por supuesto, gracias. La documentación me disolvió y no sugirió que pudiera pasar valores a las funciones de administrador. ¡Debería haberlo intentado! –
Tuve que usar 'get_queryset' en lugar de' get_query_set'. – jozxyqk