mirror of
https://github.com/Hopiu/wagtail.git
synced 2026-05-28 16:38:17 +00:00
Refactor get_fields
This commit is contained in:
parent
76de8eab34
commit
067247d2a4
1 changed files with 12 additions and 12 deletions
|
|
@ -181,6 +181,15 @@ class BaseAPIEndpoint(GenericViewSet):
|
|||
if unknown_parameters:
|
||||
raise BadRequestError("query parameter is not an operation or a recognised field: %s" % ', '.join(sorted(unknown_parameters)))
|
||||
|
||||
def get_fields(self, request):
|
||||
"""
|
||||
Return the set of fields that should be returned in the output
|
||||
representation for listing views.
|
||||
"""
|
||||
if 'fields' in request.GET:
|
||||
return set(request.GET['fields'].split(','))
|
||||
return {'title'}
|
||||
|
||||
@classmethod
|
||||
def get_urlpatterns(cls):
|
||||
"""
|
||||
|
|
@ -288,10 +297,7 @@ class PagesAPIEndpoint(BaseAPIEndpoint):
|
|||
queryset = self.paginate_queryset(queryset)
|
||||
|
||||
# Get list of fields to show in results
|
||||
if 'fields' in request.GET:
|
||||
fields = set(request.GET['fields'].split(','))
|
||||
else:
|
||||
fields = {'title'}
|
||||
fields = self.get_fields(request)
|
||||
|
||||
data = [
|
||||
self.serialize_object(request, page, fields=fields)
|
||||
|
|
@ -330,10 +336,7 @@ class ImagesAPIEndpoint(BaseAPIEndpoint):
|
|||
queryset = self.paginate_queryset(queryset)
|
||||
|
||||
# Get list of fields to show in results
|
||||
if 'fields' in request.GET:
|
||||
fields = set(request.GET['fields'].split(','))
|
||||
else:
|
||||
fields = {'title'}
|
||||
fields = self.get_fields(request)
|
||||
|
||||
data = [
|
||||
self.serialize_object(request, image, fields=fields)
|
||||
|
|
@ -377,10 +380,7 @@ class DocumentsAPIEndpoint(BaseAPIEndpoint):
|
|||
queryset = self.paginate_queryset(queryset)
|
||||
|
||||
# Get list of fields to show in results
|
||||
if 'fields' in request.GET:
|
||||
fields = set(request.GET['fields'].split(','))
|
||||
else:
|
||||
fields = {'title'}
|
||||
fields = self.get_fields(request)
|
||||
|
||||
data = [
|
||||
self.serialize_object(request, document, fields=fields)
|
||||
|
|
|
|||
Loading…
Reference in a new issue