2

En utilisant google app engine et Django non-rel, j'interroge une liste de films et je veux les classer par ordre alphabétique.Case_insensitive order_by sur GAE utilisant django non-rel

movies = Movie.objects.all().order_by("title") 

Le problème est que tous les titres qui ne commencent pas par une majuscule ne suivent pas le même modèle de tri.

Donc, si interrogé ces films et les remboursai triés puis "iRobot" ne serait pas entre Batman et Zoolander:

  1. Armageddon
  2. Batman
  3. Zoolander
  4. iRobot

Comment puis-je les amener à faire un order_by insensible à la casse?

Merci

Répondre

4

Vous devez dénormaliser: stocker une propriété séparée qui contient une version minuscule du titre, et le tri sur ce point.

+0

dénormalisation est la réponse à 80% du « comment puis-je faire X sur le magasin de données GAE » questions. – drxzcl

+0

Pas la solution que j'espérais, mais je vous remercie pour la réponse – adam

+1

Peut-être pas, mais c'est la seule solution indexable dans _any_ SGBD. :) –