Ich würde zuerst fragen, warum Sie eine varchar-Spalte haben, die als numerisch behandelt werden muss, aber egal.
Sie können das extra
verwenden queryset-Methode zum Konvertieren Ihrer Zeichenfolge:
MyTable.objects.extra(select={'int_name': 'CAST(t.name AS INTEGER)'},
order_by=['int_name'])