使用PostgreSQL的Model方法,Django查询排序不区分大小写

前端之家收集整理的这篇文章主要介绍了使用PostgreSQL的Model方法,Django查询排序不区分大小写前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是django,python和postgres的新手……我似乎无法找到关于如何在使用Model作为查询方法时不区分大小写的order_by的答案,只有当你使用直接SQL查询时.
Model
@classmethod
def get_channel_list(cls,account):
    return cls.objects.filter(accountid=account).order_by('-name').values_list('name','channelid')

数据集和订单目前正在订购中

test
b test
a test channel
a test channel
a test 2 
a b test
Test Channel
Test 3
Test 3
Test 2 Channel

任何帮助将非常感激.

使用 QuerySet.extra(select=...)
@classmethod
def get_channel_list(cls,account):
    ret = cls.objects.extra(select={'name_lower': 'lower(name)'})
    ret = ret.order_by('-name_lower')
    ret = ret.filter(accountid=account).values_list('name','channelid')
    return channels

猜你在找的Postgre SQL相关文章