Skip to content

Commit 6c237e0

Browse files
meteozondsigvef
authored andcommitted
Made api_setting.UNICODE_JSON/ensure_ascii affecting json schema (encode#7991)
1 parent 179b4be commit 6c237e0

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

rest_framework/renderers.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1035,13 +1035,16 @@ class CoreAPIJSONOpenAPIRenderer(_BaseOpenAPIRenderer):
10351035
media_type = 'application/vnd.oai.openapi+json'
10361036
charset = None
10371037
format = 'openapi-json'
1038+
ensure_ascii = not api_settings.UNICODE_JSON
10381039

10391040
def __init__(self):
10401041
assert coreapi, 'Using CoreAPIJSONOpenAPIRenderer, but `coreapi` is not installed.'
10411042

10421043
def render(self, data, media_type=None, renderer_context=None):
10431044
structure = self.get_structure(data)
1044-
return json.dumps(structure, indent=4).encode('utf-8')
1045+
return json.dumps(
1046+
structure, indent=4,
1047+
ensure_ascii=self.ensure_ascii).encode('utf-8')
10451048

10461049

10471050
class OpenAPIRenderer(BaseRenderer):
@@ -1065,6 +1068,9 @@ class JSONOpenAPIRenderer(BaseRenderer):
10651068
charset = None
10661069
encoder_class = encoders.JSONEncoder
10671070
format = 'openapi-json'
1071+
ensure_ascii = not api_settings.UNICODE_JSON
10681072

10691073
def render(self, data, media_type=None, renderer_context=None):
1070-
return json.dumps(data, cls=self.encoder_class, indent=2).encode('utf-8')
1074+
return json.dumps(
1075+
data, cls=self.encoder_class, indent=2,
1076+
ensure_ascii=self.ensure_ascii).encode('utf-8')

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy