diff --git a/wagtail/contrib/wagtailapi/serializers.py b/wagtail/contrib/wagtailapi/serializers.py index 8aedd06ec..5a7c712f0 100644 --- a/wagtail/contrib/wagtailapi/serializers.py +++ b/wagtail/contrib/wagtailapi/serializers.py @@ -103,15 +103,13 @@ class WagtailSerializer(serializers.BaseSerializer): def to_representation(self, instance): fields = self.context.get('fields', frozenset()) all_fields = self.context.get('all_fields', False) - show_details = self.context.get('show_details', False) return self.serialize_object( instance, fields=fields, all_fields=all_fields, - show_details=show_details ) - def serialize_object_metadata(self, obj, show_details=False): + def serialize_object_metadata(self, obj): """ This returns a JSON-serialisable dict to use for the "meta" section of a particlular object. @@ -124,7 +122,7 @@ class WagtailSerializer(serializers.BaseSerializer): return data - def serialize_object(self, obj, fields=frozenset(), extra_data=(), all_fields=False, show_details=False): + def serialize_object(self, obj, fields=frozenset(), extra_data=(), all_fields=False): """ This converts an object into JSON-serialisable dict so it can be used in the API. @@ -134,7 +132,7 @@ class WagtailSerializer(serializers.BaseSerializer): ] # Add meta - metadata = self.serialize_object_metadata(obj, show_details=show_details) + metadata = self.serialize_object_metadata(obj) if metadata: data.append(('meta', metadata)) @@ -165,17 +163,17 @@ class WagtailSerializer(serializers.BaseSerializer): class PageSerializer(WagtailSerializer): - def serialize_object_metadata(self, page, show_details=False): - data = super(PageSerializer, self).serialize_object_metadata(page, show_details=show_details) + def serialize_object_metadata(self, page): + data = super(PageSerializer, self).serialize_object_metadata(page) # Add type data['type'] = page.specific_class._meta.app_label + '.' + page.specific_class.__name__ return data - def serialize_object(self, page, fields=frozenset(), extra_data=(), all_fields=False, show_details=False): + def serialize_object(self, page, fields=frozenset(), extra_data=(), all_fields=False): # Add parent - if show_details: + if self.context.get('show_details', False): parent = page.get_parent() site_pages = pages_for_site(self.context['request'].site) @@ -192,15 +190,15 @@ class PageSerializer(WagtailSerializer): ])), ) - return super(PageSerializer, self).serialize_object(page, fields=fields, extra_data=extra_data, all_fields=all_fields, show_details=show_details) + return super(PageSerializer, self).serialize_object(page, fields=fields, extra_data=extra_data, all_fields=all_fields) class DocumentSerializer(WagtailSerializer): - def serialize_object_metadata(self, document, show_details=False): - data = super(DocumentSerializer, self).serialize_object_metadata(document, show_details=show_details) + def serialize_object_metadata(self, document): + data = super(DocumentSerializer, self).serialize_object_metadata(document) # Download URL - if show_details: + if self.context.get('show_details', False): data['download_url'] = URLPath(document.url) return data