Djangoのテンプレート関数を使って、viewから受けた値をHTMLで使っていますが、辞書の扱い方で困っています。
具体的には、受け取った辞書をHTML内のJSでそのまま辞書型の変数として扱いたいのですが、文字化けが起こりうまくいきません。
実際のコードは下記のようなものです。
python
1class Home(View): 2 def get(self, request, *args, **kwargs): 3 context = {} 4 context[“jisho”] = { 5 “one”: “いち”, 6 “two”: “に”, 7 } 8 return render(request, home.html, context)
html
1<script> 2 $(function () { 3 const jisho = {{ jisho }} // ここへ期待通りの辞書が入らない 4 }) 5 $(“#sentaku”).change(function () { 6 alert(jisho[$(this).val()]) 7 }) 8</script> 9<select id=“sentaku”> 10 <option value=“one”>ichi</option> 11 <option value=“two”>ni</option> 12</select>
一度、
html
1let jisho = {} 2jisho[“one”] = {{ jisho.one }} 3jisho[“two”] = {{ jisho.two }}
のように分解して作り直すしか方法は無さそうでしょうか。
どうぞよろしくお願い致します。