diff --git a/rest_framework/metadata.py b/rest_framework/metadata.py index 410acd0e2..982624ae6 100644 --- a/rest_framework/metadata.py +++ b/rest_framework/metadata.py @@ -63,8 +63,14 @@ class SimpleMetadata(BaseMetadata): metadata = OrderedDict() metadata['name'] = view.get_view_name() metadata['description'] = view.get_view_description() - metadata['renders'] = [renderer.media_type for renderer in view.renderer_classes] - metadata['parses'] = [parser.media_type for parser in view.parser_classes] + renders = OrderedDict() + for renderer in view.renderer_classes: + renders[renderer.media_type] = True + metadata['renders'] = list(renders.keys()) + parses = OrderedDict() + for parser in view.parser_classes: + parses[parser.media_type] = True + metadata['parses'] = list(parses.keys()) if hasattr(view, 'get_serializer'): actions = self.determine_actions(request, view) if actions: