gpt4 book ai didi

javascript - 第一次请求加载json数据并显示在首页

转载 作者:数据小太阳 更新时间:2023-10-29 05:21:55 24 4
gpt4 key购买 nike

我是第一次使用 Vue.js。我需要序列化django的对象

views.py

 def articles(request):
model = News.objects.all() # getting News objects list
modelSerialize = serializers.serialize('json', News.objects.all())
random_generator = random.randint(1,News.objects.count())
context = {'models':modelSerialize,
'title' : 'Articles' ,
'num_of_objects' : News.objects.count() ,
'random_order' : random.randint(1,random_generator) ,
'random_object' : News.objects.get(id = random_generator ) ,
'first4rec' : model[0:4],
'next4rec' : model[4:],
}
return render(request, 'articles.html',context)

我尝试在 html 中显示序列化的 json 数据,它在那里工作正常,

现在,如何在 vue 实例中初始化 json 数据并使用 v-repeat 属性在 html 中访问。

https://jsfiddle.net/kn9181/1yy84912/

请问有人能帮忙吗???

最佳答案

一个简单的例子。

views.py

def articles(request):
context {
'articles' : ['a1','a2','a3']
}
return render(request, 'articles.html', context)

articles.html

{% verbatim %}
<div id="app">
<ul>
<li v-for="a in articles">{{ a }}</li>
</ul>
</div>
{% endverbatim %}

<script>
new Vue({
el : "#app",
data : function(){
return {
articles : {{ articles | safe }}
}
}
})
</script>

注意事项:

  • verbatim 标签阻止 Django 呈现此 block 标签的内容,因为 Vue 使用相同的插值符号。
  • 防止 Django 转义内容的 safe 过滤器。
  • 如果你传递的是字典,考虑先把它转成JSON

一般来说,更喜欢通过 Ajax 向 Vue 传递数据

关于javascript - 第一次请求加载json数据并显示在首页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36114511/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com