在postgresql中查询JSONField的另一种方法django

时间:2018-01-18 12:01:04

标签: python django postgresql

我在PostgreSQL上用数据库创建了Django项目。我有一个列数据,它是一个JSONField()对象。现在,为了查询数据JSON blob,文档只显示一种方式。假设某些行有关键作为' Salary'在数据中如此根据文档,如果我想检索具有薪水的行,那么方式是:

TableName.objects.filter(data__Salary__gte = 15000)

现在问题是我想让用户具体,就像用户告诉密钥并将其传递给函数一样,我想要这样的东西:

keyValue = 'Salary'
TableName.objects.filter(data__keyValue__gte = 15000)

但由于数据中没有keyValue列,因此显而易见。还有其他办法吗?

1 个答案:

答案 0 :(得分:2)

试试这个

keyValue = 'Salary'

params = {'data__%s__gte' % keyValue:15000}
TableName.objects.filter(**params)