【发布时间】:2014-08-24 17:46:34
【问题描述】:
我有一些代码可以按年龄过滤和排序,之前假设我们正在查询的模型将存储的年龄作为单个整数进行查询。这些是我拨打的电话类型:
user_profiles = user_profiles.filter(age__gte=min_age, age__lte=max_age)
user_profiles.order_by("age")
作为重构的一部分,我将模型更改为存储出生年/月/日,而不是静态年龄。不过,我不清楚应该如何翻译查询调用来解决这个问题。如果我想查询 14-20 岁之间的用户,当你需要结合 3 个不相交的结果时,这是如何在 Django 中完成的列?
【问题讨论】:
-
那是错误的改变。您应该使用 DateField 而不是三个单独的整数字段。