我已经看到,在tastypie中,例如,可以通过来自客户端的json请求发送查询,并且tastypie知道将它(我猜)转换为ORM查询并执行它。
我想模仿这种能力,以便我能够转换这个json:
{
"foo__isnull": false,
"name__in": "paul,george",
"baz__fish": "blah",
"limit": 6
}
类似
MyModel.objects.filter(foo__isnull=False, name__in=["paul", "george"], ...)
没有完全使用tastypie的开销 - 是否可能?
答案 0 :(得分:2)
您可以使用**
传递查询:
query = json.loads(your_json_string)
MyModel.objects.filter(**query)
如果您想知道如何将paul,george
转换为列表,请执行:
query = json.loads(your_json_string)
query['name__in'] = query['name__in'].split(',')