django queryset para campo muitos-para-muitos
Eu tenho os seguintes modelos do Django 1.2:
class Category(models.Model):
name = models.CharField(max_length=255)
class Article(models.Model):
title = models.CharField(max_length=10, unique=True)
categories = models.ManyToManyField(Category)
class Preference(models.Model):
title = models.CharField(max_length=10, unique=True)
categories = models.ManyToManyField(Category)
Como posso executar uma consulta que fornecerá todos os objetos de artigo associados a qualquer uma das mesmas categorias com as quais um determinado objeto de preferência está relacionado?
por exemplo. Se eu tiver um objeto de preferência relacionado às categorias "peixe", "gatos" e "cães", desejo uma lista de todos os artigos associados a qualquer um dos "peixes", "gatos" ou "cães".