3
所以我有一個分頁的結果列表。這裏的DRF如何通過默認格式是:如何將所有元數據包裝到「元」屬性中?
{
"count": 1023
"next": "https://api.example.org/accounts/?page=5",
"previous": "https://api.example.org/accounts/?page=3",
"results": [
…
]
}
如何包裝所有元數據到「元」屬性,以使響應如下所示:
{
"meta": {
"count": 1023
"next": "https://api.example.org/accounts/?page=5",
"previous": "https://api.example.org/accounts/?page=3",
},
"results": [
…
]
}
編輯:謝謝阿拉斯戴爾爲你的答案。以下是我如何做到的:
from rest_framework import pagination
from rest_framework.response import Response
class CustomPagination(pagination.LimitOffsetPagination):
def get_paginated_response(self, data):
return Response({
'meta': {
'next': self.get_next_link(),
'previous': self.get_previous_link(),
'count': self.count
},
'results': data
})
您可以創建自定義分頁程序並覆蓋'get_paginated_response'方法。 [這個答案](http://stackoverflow.com/questions/31740039/django-rest-framework-pagination-extremely-slow-count/31741778#31741778)應該讓你開始,如果你卡住了,請更新你的問題。 – Alasdair
您應該將解決方案作爲答案發布,而不是編輯您的帖子。 – GwynBleidD