diff --git a/rest_framework/management/commands/generateschema.py b/rest_framework/management/commands/generateschema.py index 04a4267c7..94b110aa1 100644 --- a/rest_framework/management/commands/generateschema.py +++ b/rest_framework/management/commands/generateschema.py @@ -29,9 +29,8 @@ class Command(BaseCommand): schema = generator.get_schema(request=None, public=True) renderer = self.get_renderer(options['format']) - output = renderer.render(schema) - - self.stdout.write(output) + output = renderer.render(schema, renderer_context={}) + self.stdout.write(output.decode('utf-8')) def get_renderer(self, format): return { diff --git a/rest_framework/renderers.py b/rest_framework/renderers.py index 8fa3c5576..375c38a85 100644 --- a/rest_framework/renderers.py +++ b/rest_framework/renderers.py @@ -1034,7 +1034,7 @@ class OpenAPIRenderer(_BaseOpenAPIRenderer): def render(self, data, media_type=None, renderer_context=None): structure = self.get_structure(data) - return yaml.dump(structure, default_flow_style=False) + return yaml.dump(structure, default_flow_style=False).encode('utf-8') class JSONOpenAPIRenderer(_BaseOpenAPIRenderer): @@ -1047,4 +1047,4 @@ class JSONOpenAPIRenderer(_BaseOpenAPIRenderer): def render(self, data, media_type=None, renderer_context=None): structure = self.get_structure(data) - return json.dumps(structure, indent=4) + return json.dumps(structure, indent=4).encode('utf-8')