J'ai besoin de construire une requête dans Django, et je me demande si c'est en quelque sorte possible (cela peut être vraiment évident mais il me manque ...).Obtenir des lignes distinctes basées sur un certain champ d'une base de données dans Django
J'ai une requête normale Model.objects.filter(x=True)[:5]
qui peut retourner des résultats comme celui-ci:
FirstName LastName Country Bob Jones UK Bill Thompson UK David Smith USA
je dois les lignes d'appui seulement qui sont distinctes en fonction du champ Country
, quelque chose comme Model.objects.filter(x=True).distinct('Country')[:5]
serait idéal, mais ce n'est pas possible Django.
Les lignes que je veux la requête de saisir en fin de compte sont les suivants:.
FirstName LastName Country Bob Jones UK David Smith USA
Je dois aussi la requête d'utiliser le même ordre tel que défini dans la classe Meta du modèle (par exemple je ne peux pas passer outre l'ordre dans en tous cas).
Comment ferais-je cela?
Merci beaucoup.
J'ai seulement besoin des cinq premières rangées du DB. – Dx143
C'est une question difficile, mais je ne suis pas sûr de bien comprendre la question. Voulez-vous les cinq premières lignes dans lesquelles le pays est distinct? – jathanism
Salut - oui, je fais :). – Dx143