2017-07-03 77 views
2

有一個擴展django-polymorphic模型:嘗試使用Django的Lower做的時候,現在「下」對象有沒有屬性「分區」

class FooQuerySet(PolymorphicQuerySet): 
    .. 

確保order_by不區分大小寫

qs.order_by(Lower('name')) 

越來越:

*** AttributeError: 'Lower' object has no attribute 'partition'


問題:有可能PolymorphicQuerySet導致此錯誤(因爲它在常規查詢集上工作正常)?

+0

annotateorder_by查詢試試這個曾經qs.order_by(lower_name =更低( '名')) – Exprator

+0

***類型錯誤:ORDER_BY( )得到了一個意想不到的關鍵字參數'lower_name' – Oleg

+1

ohh對不起,試試這個qs.annotate(lower_name = Lower('name'))。order_by('lower_name') – Exprator

回答

2

試試這個,因爲你需要將它傳遞給order_by

qs.annotate(lower_name = Lower('name')).order_by('lower_name')