【发布时间】:2016-02-04 02:55:55
【问题描述】:
我在我的 django 模型上使用 json 字段:
class JsonTable(models.Model):
data = JSONField()
type = models.IntegerField()
我尝试了下一个查询,它适用于普通的 sql 字段:
JsonTable.objects.filter(type=1).values('type').annotate(Avg('data__superkey'))
但这会引发下一个错误:
FieldError: Cannot resolve keyword 'superkey' into field. Join on 'data' not permitted.
有没有办法在 json 键上进行分组,使用 Django ORM 或一些 python 库,而不使用原始 sql?
版本:Django 1.9b、PostgreSQL 9.4
更新
示例 2:
JsonTable.objects.filter(type=1).values('data__happykey').annotate(Avg('data_superkey'))
在happykey 上抛出同样的错误
【问题讨论】:
标签: python json django postgresql