Ich baue eine API mit Django-Rest-Framework und setze die Cursor-Paginierung - standardmäßig nach 'erstellt' Filter, was wirklich gut für einige Ansichten.Ordering cursor pagination mit Django-Rest
Aber ich habe diese, die ich durch andere Felder bestellen möchte (last_update und Besuche). Ich stelle das Bestellfeld in meine Sicht, funktioniert aber nicht.
class StationList(generics.ListAPIView):
"""
List all stations.
"""
ordering = ('-last_update', '-visits',)
queryset = Station.objects.all()
serializer_class = StationSerializer
permission_classes = (permissions.IsAuthenticated,)
, dass ein Teil meiner setting.py
REST_FRAMEWORK = {
'DEFAULT_RENDERER_CLASSES': (
'rest_framework.renderers.JSONRenderer',
),
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework.authentication.SessionAuthentication',
'rest_framework.authentication.TokenAuthentication',
),
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.AllowAny',
),
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.CursorPagination',
'PAGE_SIZE': 12,
}
ist Was muss ich tun, damit es funktioniert?
Beachten Sie jedoch, dass es einige Einschränkungen auf dem Bestellfeld sind Sie kann für 'CursorPagination' verwenden: http://www.django-rest-framework.org/api-guide/pagination/#details-and-limitations –