Django already has a way to achieve this for RDBMS:
MyModel.objects.order_by(Lower('myfield'))
I'm using DRF with mongoengine but the above throws error:
TypeError: 'Lower' object is not subscriptable
I'm guessing this is a bug in the way order_by has been implemented in mongoengine.