1

Django テンプレートの JavaScript 内で辞書 (country_stat) にアクセスする必要があります。このJavaScriptコードを持つGoogleチャートAPIを使用しています。以下のコードはうまく動作し、きれいな地図を出力します。しかし、値は静的です。

function drawRegionsMap() {
  var data = google.visualization.arrayToDataTable([
    ['Country', 'Popularity'],
    ['Germany', 2],
    ['United States', 3],
    ['Brazil', 4],
    ['Canada', 5],
    ['France', 6],
    ['RU', 7]
  ]);

content ブロック内の country_stat の出力は成功しました。

{% for key, value in country_stat.items %}
{{key}}, {{value}}
{% endfor %}

プリント、

India, 2 Russia, 1 

しかし、これをJavaScriptコードにプラグインする方法がわかりません。

4

2 に答える 2

6

AJAX でデータを要求するか、テンプレートから JavaScript 内にリテラル JSON をドロップダウンします - ビューにコンテキスト変数を設定します。

import simplejson as json
context['thingy_json'] = json.dumps(thingy)

次に、その変数をテンプレートに含めます。

<script>
    var data = {{ thingy_json }};
</script>
于 2012-05-12T10:54:00.533 に答える
3

実際に解決しました。

  var data = google.visualization.arrayToDataTable([
    ['Country', 'Popularity'],
    {% for key, value in country_stat.items %}
    ['{{key}}', {{value}}],
    {% endfor %}
  ]);

問題はばかげていました - {{key}} を一重引用符で囲みませんでした

于 2012-05-12T11:00:20.297 に答える