而不是在未设置 ID 时返回多个对象。我希望它只返回一个,最新的。
# return latest entry
/api/entry/
{'id': 2, 'foo': 'bar', ...}
# return specified entry
/api/entry/1/
{'id': 1, 'foo': 'bar', ...}
我已经尝试过同时覆盖obj_get_list
and get_object_list
,但都没有为我工作。
我需要为此创建一个视图吗?
而不是在未设置 ID 时返回多个对象。我希望它只返回一个,最新的。
# return latest entry
/api/entry/
{'id': 2, 'foo': 'bar', ...}
# return specified entry
/api/entry/1/
{'id': 1, 'foo': 'bar', ...}
我已经尝试过同时覆盖obj_get_list
and get_object_list
,但都没有为我工作。
我需要为此创建一个视图吗?
我不知道您是如何尝试覆盖obj_get_list
的,但基本上您要做的就是Resource
像这样定义它:
def get_object_list(self, request):
return super(self, Resource).get_object_list(request)[:1]
latest('somedate')
如果您没有在默认情况下在日期字段上设置排序,您也可以追加。
使用 aniav 的解决方案,并添加必要的修改:
Resource
class Meta:
max_limit=1
get_object_list(self,request):
return super(self, Resource).get_object_list(request).filter(user=request.user).order_by('-date')
当然,日期可以替换为您想要最新的字段。