如何将json字典从javascript.get传递到django模板?

如何将json字典从javascript.get传递到django模板?,javascript,json,django,Javascript,Json,Django,在django模板的头部,我当前有: <script> $.get('get_students/', function (dict) { alert(dict) }) </script> 是否可以将dict从script标记“转义”到普通的Django模板中,这样我就可以使用如下内容对其进行迭代: {% for d in dict%} <p>d.username</p> {% endfor %} {% for

在django模板的头部,我当前有:

<script>
   $.get('get_students/', function (dict) {
        alert(dict)
   })
</script>
是否可以将dict从script标记“转义”到普通的Django模板中,这样我就可以使用如下内容对其进行迭代:

{% for d in dict%}
    <p>d.username</p>
{% endfor %}
{% for d in contextDictionary %}
    <p>d.username</p>
{% endfor %}
{%d在dict%}
d、 用户名

{%endfor%}
如果有更明智的方法,请推荐给我,我还在学习。请注意,我在一个组件中工作,我必须从中调用视图,这就是我使用js get的原因


谢谢

虽然它没有直接回答这个问题,但这不能通过使用该方法将数据传递到视图中,然后在其上循环来完成吗

所以你的观点是这样的:

class ExampleDetailView(DetailView):
model = Student

def get_context_data(self, **kwargs):
    # Call the base implementation first to get a context
    context = super().get_context_data(**kwargs)
    # Add in a QuerySet of all the books
    context['contextDictionary'] = get_students()
    return context
然后在模板中有如下内容:

{% for d in dict%}
    <p>d.username</p>
{% endfor %}
{% for d in contextDictionary %}
    <p>d.username</p>
{% endfor %}
{%d在contextDictionary%}
d、 用户名

{%endfor%}
因此答案是使用JQuery。在脚本标记内,我迭代字典值,并使用js字符串将它们附加到innerHTML。因此,上面的.get必须变成:

{% for d in dict%}
    <p>d.username</p>
{% endfor %}
{% for d in contextDictionary %}
    <p>d.username</p>
{% endfor %}
$.get('get_students/',函数(数据){
var write_to_div=document.getElementById(“studentDiv”);
for(数据中的var d){
值=数据[d]
将_写入_div.innerHTML++=“”+value['first_name']+“

” }
})
MyURL包含“url(r'^get\u students/,get\u students)”,我如何引用此视图?我不介意我们怎么做,只要我能按你说的方式访问它,而不用指定新模板。你能详细说明怎么做吗,我不是很熟悉。。。我有一个学生模型,而不是发布者模型,我也不知道如何使用get从我的HTML模板调用该视图…在我发布的代码中,您不会从get请求调用该代码。您可以直接通过视图将其传递到模板中。你能把你的视图和模型添加到模板中吗?我不这么认为。我在我的主页上使用了wagtail块组件,因此主页已设置,我无法更改它在url中调用的视图,即url(r“”,include('django.contrib.auth.url'))(除非一个url可以调用两个视图?)。所以我想我必须从模板本身调用另一个视图。