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?

Respuestas a la pregunta(10)

Su respuesta a la pregunta