django テンプレートタグ「url」を使用して URL に誘導する DRY 方法があることが知られています。
{% url "someview" arg1=X %}
ここで、「X」をJavaScript変数の値、たとえばtmp
. しかし、以下は機能しません
<script>
...{% url "someview" arg1=tmp %}...
</script>
テンプレートタグ内の値を取得するにはどうすればよいですか?
django テンプレートタグ「url」を使用して URL に誘導する DRY 方法があることが知られています。
{% url "someview" arg1=X %}
ここで、「X」をJavaScript変数の値、たとえばtmp
. しかし、以下は機能しません
<script>
...{% url "someview" arg1=tmp %}...
</script>
テンプレートタグ内の値を取得するにはどうすればよいですか?
ほとんどの状況で機能する可能性のあるトリックを見つけました。
var url_mask = "{% url 'someview' arg1=12345 %}".replace(/12345/, tmp.toString());
クリーンで、DRY の原則を破りません。
var name = "{% url 'your_view_name' pk=0 %}".replace('0', name_variable);
JavaScript から名前付き引数を使用できるとは思いません{% url %}
が、位置引数またはクエリ文字列パラメーターを使用できます。
<script type="text/javascript">
var tmp = window.location.hash, //for example
url = {% url '[url_name]' %} + tmp + '/';
</script>
ただし、これは、テンプレートが最初にレンダリングされるときに 1 回しか実行できません。