如何以数字方式订购Django QuerySet字符串属性?

时间:2011-07-11 04:34:22

标签: python django sorting django-models sql-order-by

我有一个QuerySet,我想用数字命令它们。问题是数据存储为String。我知道如何在SQL或列表中执行此操作,但不知道如何在查询集中执行此操作。这甚至可能吗?

1 个答案:

答案 0 :(得分:4)

您可能需要回退到Django的extra功能。也许:

ordered = (qs.extra(select={"order_column": "CONVERT(column, INTEGER)"})
           .order_by("order_column"))

(假设您使用的是MySQL)