PostgreSQL per impostazione predefinita considera i valori NULL come i più alti, quindi li ordina prima per le query discendenti e per quelli ascendenti.Come modificare il comportamento di ordinamento null predefinito da PostgreSQL nell'ORM Django
È possibile modificare questo comportamento per query o alla creazione dell'indice specificando "NULLS LAST" o "NULLS FIRST".
Come posso utilizzarlo in combinazione con l'ORM Django, senza la necessità di utilizzare query non elaborate? I.e. quando aggiungo al mio query_set qualcosa come qs.order_by("-publish_start")
, come posso specificare l'ordinamento per i null? Oppure, in alternativa, sulla dichiarazione di campo/indice.
Vale la pena affermare (perché sono lento e mi ci è voluto un po 'per capire) che se vuoi che i risultati siano prima con valori NULL, e poi "publish_start' ha ordinato ASCending, devi invertire l'istruzione order_by: '['-null_start', 'publish_start']'. –
'extra' è deprecato, vedi invece http://stackoverflow.com/a/35494930/15690. – blueyed
@blueyed sì questo è ciò che hanno le risposte di 4 anni nello stack overflow. Diventano obsoleti. Non c'è bisogno di downvotare per quello ... –