我的Django视图中有一个变量data1,它已按以下方式返回 -
def dashboard(request):
df1 = pd.read_excel("file.xlsx")
str1= df1.to_json(orient = 'records')
data1 = json.loads(str1)
return render(request, 'dashboard/new 1.html',{'data1' : data1})
然后使用javascript
在模板中调用变量 <script type = text/javascript>
var ob2 = JSON.parse( {{ data1 }} );
document.write(ob2);
</script>
这不会在创建的HTML网页上显示任何内容。代码有什么问题吗?
答案 0 :(得分:1)
尝试将其输出为字符串:
<script type = text/javascript>
var ob2 = JSON.parse( "{{ data1 }}" );
document.write(ob2);
</script>
如果没有产生结果,我建议只在屏幕上打印{{ data1 }}
并确切地看到Django返回的内容。
答案 1 :(得分:1)
除了Brewmaster的答案,其他问题是:
data1 = json.loads(str1)
将JSON字符串转换回Python数据结构。只需将str1
本身发送到模板,然后将其称为a
,就像您在模板中使用的那样:
return render(request, 'dashboard/new 1.html',{'a' : str1})
答案 2 :(得分:0)
通过移除Parse
<script type = text/javascript>
document.write("{{ data1 }}");
</script>