Django filter queryset __in para * cada * item na lista

Digamos que eu tenho os seguintes modelos

class Photo(models.Model):
    tags = models.ManyToManyField(Tag)

class Tag(models.Model):
    name = models.CharField(max_length=50)

Em uma visualização, tenho uma lista com filtros ativos chamados categorias. Quero filtrar objetos de foto que tenham todas as tags presentes em categorias.

Eu tentei

Photo.objects.filter(tags__name__in=categories)

Mas isso correspondequalque item nas categorias, nãotodo Itens

Então, se as categorias forem ['feriado', 'verão'], quero fotos com uma tag de feriado e verão.

Isso pode ser alcançado?

questionAnswers(5)

yourAnswerToTheQuestion