我有一個視圖集中這樣一個列出用戶的數據:Django的REST框架:打開分頁上一個視圖集(如ModelViewSet分頁)
class Foo(viewsets.ViewSet):
def list(self, request):
queryset = User.objects.all()
serializer = UserSerializer(queryset, many=True)
return Response(serializer.data)
我想打開分頁像ModelViewSet默認分頁:
{
"count": 55,
"next": "http://myUrl/?page=2",
"previous": null,
"results": [{...},{...},...,{...}]
}
Pagination is only performed automatically if you're using the generic views or viewsets
...但我的結果集我根本沒有分頁。我如何分頁?
我接着說:paginate_by = 10',但它不工作。如果我用class Foo(generics.ListCreateAPIView)更改class Foo(viewsets.ViewSet):'我得到這個錯誤:_as_view()需要1個參數(給出3)_ – floatingpurr
您是否將任何參數傳遞給.as_view ()?其次爲什麼你不使用'ModelViewSet'? –
不,沒有.as_views()。我沒有使用'ModelViewSet',因爲我需要編寫一些邏輯來過濾我的'queryset'的一個子集,並將一些數據添加到與用戶模型無關的結果集(該邏輯在我的問題的代碼中被省略) – floatingpurr