如何在Django中数字查询字符串

时间:2019-06-02 00:15:35

标签: python django postgresql

我正在使用Django通过表单条目查询旧版Postgres 10数据库。当用户输入年龄时,我正在针对与年龄相关的两列(最小年龄,最大年龄)查询变量。这些列设置为“字符字段”,并且始终包含“ 40年”,“ 20周”等形式的数据。我该如何以数字方式查询这些列,即最小年龄> X和最大年龄

我尝试使用正则表达式来隔离字符串的数字部分,然后将整数与另一个变量进行比较,但会出现语法错误:

Test_Query = Eligibilities.objects.filter(Q((minimum_age__regex=r'^\d+')__gte = AgeFormData), Q((minimum_age__regex=r'^\d+')__lte = AgeFormData))

我也尝试过分割字符串并将其转换为整数,也没有运气。

如果用户输入年龄为40岁,我希望出现最小年龄大于或等于40且最大年龄小于或等于40的所有记录。

感谢您的帮助!

0 个答案:

没有答案