Supposons que j'ai deux modèles, A
et B
, où A
peut avoir plusieurs B
associés. Étant donné un QuerySet d'objets A
, comment puis-je créer un QuerySet contenant tous les objets B
liés à tous ces objets A
?Comment choisir plusieurs avec un jeu de requêtes Django?
Pour ceux qui se trouvent également parler LINQ, je veux quelque chose comme ceci:
queryableOfA.SelectMany(a => a.Bs)
Mieux encore serait un exemple de chaîne A -> B -> C, à savoir la LINQ suivante:
queryableOfA.SelectMany(a => a.Bs).SelectMany(b => b.Cs)
(retour d'un "queryset" de tous C
objets liés à tous les objets A
par B
)
A est une classe encapsulant le modèle. L'appel filter() sur les objets renvoie un ensemble de requêtes que vous recherchez. Si vous avez besoin d'un élément, utilisez .get() mais si plusieurs éléments sont trouvés, cela déclenchera une erreur A.MultipleObjectsReturned. – Evgeny