django-orm-groß-und Kleinschreibung, um durch
Ich weiß, ich kann laufen, eine die groß /Kleinschreibung bei Suche von DJango-ORM. Wie,
User.objects.filter(first_name__contains="jake")
User.objects.filter(first_name__contains="sulley")
User.objects.filter(first_name__icontains="Jake")
User.objects.filter(first_name__icontains="Sulley")
Und auch ich kann Sie zu Holen, als
user_list = User.objects.all().order_by("first_name")
# sequence: (Jake, Sulley, jake, sulley)
user_list = User.objects.all().order_by("-first_name") # for reverse
# sequence: (sulley, jake, Sulley, Jake)
Gibt es einen direkten Weg für eine groß- /Kleinschreibung zu Holen?? Als in ich möchte eine Sequenz als
# desired sequence: jake, Jake, sulley, Sulley
Wenn nicht, dann schlagen Sie eine beste Weg, es zu tun. Vielen Dank im Voraus.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Antwort ist veraltet, schauen Sie unter Lösung mit django 1.8 ->
Fand ich die Lösung mit .extra
original-link:
http://naorrosenberg.blogspot.fi/2011/04/django-models-orderby-charfield-case.html
Seit Django 1.8 ist es möglich mit:
https://code.djangoproject.com/ticket/6498
Dies ist für postgresql, aber vielleicht wird es nützlich sein, für andere Datenbanken zu:
http://scottbarnham.com/blog/2007/11/20/case-insensitive-ordering-with-django-and-postgresql/
extra
und auf diese Weise versuchen, zu erreichen, was Sie wollen. Diese Arbeit sollte auf jedes db. Oder schreiben Sie eine raw-sql.