有没有办法用javascript变量索引Django / Jinja列表?

时间:2015-12-12 19:58:27

标签: javascript python django

我一直试图将变量传递到{{list}},但我似乎无法找到方法。有没有一种正确的方法来使用Javascript执行此操作?或者Javascript和Jinja不能沟通?

我是否必须序列化我的模型,并将其传递给javascript变量?

1 个答案:

答案 0 :(得分:1)

有很多方法可以做。

1。第一种方法是在jinja2渲染时手动定义变量。

如果python代码是:

sample_template.html

<html> <head><title>sample</title></head> <body> <script> var data = "{{ data }}"; // and now, you can parse value of data variable. And then using it. </script> </body> </html> 是:

from django.http import JsonResponse

def sample(request):
    return render(request, 'sample_template.html')

def api(request):
    return JsonResponse({'data': [1, 2, 3, 4, 5]})

2。定义另一个获取数据的端点(Create API)

蟒:

<html>
    <head>
        <title>sample</title>
        <script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
    </head>
    <body>
        <script>
        var data;
        $.ajax({
          url: 'endpoint-for-api'
        }).done(function(d) {
            data = d;
        });
        // and also you using it.
        </script>
    </body>
</html>

HTML:

{{1}}