@Django filtra vários campos em uma tabela intermediária de muitos para muitos

Tenho os seguintes modelos no meu projeto django:

class Video(models.Model):
    media = models.ForeignKey(Media)

class Media(models.Model):
    title = models.CharField(max_length=255)
    formats = models.ManyToManyField(Format,through='MediaFormat',related_name='media',blank=True)

class Format(models.Model):
    title = models.CharField(max_length=50)

class MediaFormat(models.Model):
    status = models.IntegerField()
    format = models.ForeignKey(Format)
    media = models.ForeignKey(Media)

Agora, desejo filtrar todos os vídeos com um formato específico, E o código de status para esse formato é 10 (pronto para uso). Como eu posso fazer isso? (assumindo que f é o formato):

f = Format.objects.get(pk=3)

Estou tentado a usar:

Video.objects.filter(media__formats=f, media__mediaformat__status=10)

Mas então, isso retornaria todos os vídeos que correspondam a ambas as suposições:

a) contém esse formato específico eb) contém qualquer formato com o status 10

Como devo filtrar apenas aqueles que têm esse formato específico em um código de status 10?

obrigado

questionAnswers(3)

yourAnswerToTheQuestion