Comment ajouter "NULLS LAST" à une requête Django
Lors du tri des données dans PostgreSQL, il est courant d'utiliser le "NULLS LAST" pour garantir que les valeurs nulles sont triées à la fin des résultats. Cette option n'est pas directement prise en charge dans l'API de requête de Django.
Solution
Le paramètre nulls_last=True peut être utilisé avec Expression.desc() pour contrôler l'ordre des valeurs null valeurs. Voici un exemple :
from django.db.models import F MyModel.objects.all().order_by(F('price').desc(nulls_last=True))
Cette syntaxe est disponible depuis Django 1.11.
Informations supplémentaires
La documentation recommande d'utiliser Expression.asc( ) ou Expression.desc() avec le paramètre nulls_last approprié au lieu de extra() avec l'ancien order_by syntaxe.
Pour Django 3.1 et supérieur, reportez-vous à la documentation officielle pour plus d'informations :
https://docs.djangoproject.com/en/3.1/ref/models/expressions/# utiliser-f-pour-trier-null-values
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!