通过模板渲染加载数据?

时间:2019-07-08 20:20:41

标签: django python-3.x templating

目前,我的index.html中有一些代码如下:

<script>
    var episodes = [
        {% for episode in episodes_json %}
            {{episode|safe}},
        {% endfor %}
    ]
</script>

在我看来:

def view(request):
    return render("index.html", request, {"episodes": ...}

这会加载我显示给用户的一些数据。效果很好,但是到目前为止,我在任何django教程中都没有看到这种类型的数据加载。以这种方式而不是通过AJAX请求或其他方式来加载数据有什么缺点吗?

这可能适用于任何模板语言...

1 个答案:

答案 0 :(得分:0)

以这种方式进行操作绝对没有错,但是有点笨拙。一种更简单的方法是仅使用JSON-无需将其与Ajax结合使用,它非常适合直接发送。因此,在视图中:

return render("index.html", request, {"episodes": json.dumps(...)})

,而在模板中:

var episodes = JSON.parse({{ episodes|safe }});