回答編集履歴

1

追記

2022/01/09 15:20

投稿

umau
umau

スコア831

test CHANGED
@@ -19,3 +19,45 @@
19
19
 
20
20
 
21
21
  ```
22
+
23
+ ---
24
+
25
+ (追記)
26
+
27
+
28
+
29
+ たしかに`return JsonResponse({'aaa': 'こんちわ'})`だと、`{"aaa": "\u3053\u3093\u3061\u308f"}`になってしまうので、
30
+
31
+ ```Python
32
+
33
+ return JsonResponse({'aaa': True}, json_dumps_params={'ensure_ascii': False})
34
+
35
+ ```
36
+
37
+ で行けますが、これが面倒くさいということでしたら、
38
+
39
+
40
+
41
+ ```Python
42
+
43
+ class UTF8JsonResponse(JsonResponse):
44
+
45
+ def __init__(self, *args, json_dumps_params=None, **kwargs):
46
+
47
+ json_dumps_params = {"ensure_ascii": False, **(json_dumps_params or {})}
48
+
49
+ super().__init__(*args, json_dumps_params=json_dumps_params, **kwargs)
50
+
51
+ ```
52
+
53
+ のような拡張クラスを自作する、っていう手がありました。([参考](https://stackoverflow.com/questions/34798703/creating-utf-8-jsonresponse-in-django))
54
+
55
+
56
+
57
+ ```Python
58
+
59
+ def hoge(req):
60
+
61
+ return UTF8JsonResponse({'aaa': 'こんちわ'})
62
+
63
+ ```