Django filter queryset __in para * cada * elemento en la lista
Digamos que tengo los siguientes modelos
class Photo(models.Model):
tags = models.ManyToManyField(Tag)
class Tag(models.Model):
name = models.CharField(max_length=50)
En una vista, tengo una lista con filtros activos llamada categorías. Quiero filtrar objetos de fotos que tengan todas las etiquetas presentes en categorías.
Lo intenté
Photo.objects.filter(tags__name__in=categories)
Pero esto coincide conningun elemento en categorías, notodo artículos
Así que si las categorías fueran ['vacaciones', 'verano'] quiero fotos con etiquetas de vacaciones y verano.
¿Se puede lograr esto?