谷歌图表的Django

2024-04-18 23:25:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图让google图表显示在我的页面上,但是我不知道如何将django视图中的值传递给javascript,这样我就可以绘制图表了。在

Django代码:

array = ([
      ['Year', 'Sales', 'Expenses'],
      ['2004',  1000,      400],
      ['2005',  1170,      460],
      ['2006',  660,       1120],
      ['2007',  1030,      540]
    ]);
args['array']= array
return render_to_response('progress.html',args)

在程序.html公司名称:

^{pr2}$

这样,图表就不会显示出来了。有什么建议吗?在


Tags: django代码视图htmlgoogle图表绘制args
3条回答

在您的视图中

删除此行args['array']= array

将这行return render_to_response('progress.html',args)改为return render_to_response('progress.html',{'array': json.dumps(array)})

在您的模板中

将这行var djangoData = '{{array}}';改为var djangoData = '{{ array | safe }}';

剩下的代码没问题。我希望这有帮助。在

在google.visualization.arrayToDataTable()似乎采用二维(javascript)数组。你传递的是一根绳子。你需要把它解析成一个数组。尝试:

var djangoData = JSON.parse('{{ array }}');
var data = google.visualization.arrayToDataTable(djangoData);

对我来说,这个组合很有用:

查看:

from django.shortcuts import render
import json

(...)
context= {'array': json.dumps(array)}
return render(request,'progress.html',context)

模板:

^{pr2}$

相关问题 更多 >