Django tastypie,可能只返回查询的元数据

时间:2013-08-23 10:20:48

标签: django tastypie

我设置了Django Tastypie API。

我想查询数据库中与名称匹配的对象的数量。

这是否可以在现有模型资源上实现,还是需要设置新资源来处理这种特定情况? (这些数据通常在结果的元数据部分返回?是否只有一个选项可以从参数中返回?)

所以,如果我的网址通常是这样的:

http://127.0.0.1:8000/api/v1/library/?name__icontains=ABC

我可以添加参数或更改网址,以便它只返回元数据(我只想返回名称中包含“ABC”的库的数量)而不是所有对象吗?

1 个答案:

答案 0 :(得分:7)

您可以传入get参数:

http://127.0.0.1:8000/api/v1/library/?name__icontains=ABC&meta_only=true

并将此方法添加到您的资源中:

def alter_list_data_to_serialize(self, request, data):
    if request.GET.get('meta_only'):
        return {'meta': data['meta']}
    return data

文档:http://django-tastypie.readthedocs.org/en/latest/resources.html#alter-list-data-to-serialize