Trước hết, tôi muốn hỏi tại sao bạn có một cột varchar cần được coi là số, nhưng đừng bận tâm.
Bạn có thể sử dụng extra
phương thức queryset để chuyển đổi chuỗi của bạn:
MyTable.objects.extra(select={'int_name': 'CAST(t.name AS INTEGER)'},
order_by=['int_name'])