是否可以在web2py中使用Chart.js?

时间:2019-02-13 21:32:48

标签: chart.js web2py

我正在努力解决web2py中的应用程序。我需要包含一个图表元素(一个雷达图),并尝试了许多选项,但没有成功。然后,我决定通过在视图中添加脚本来使用Chart.bundle.js并将文件Chart.bundle.js存储在静态目录中。

但是它不起作用。我没有任何错误,但是视图中未加载图表。 以下是查看代码:

this.AddHandler(
    ComboBox.MouseLeftButtonUpEvent,
    new MouseButtonEventHandler(Cb_MouseLeftButtonUp),
    true
);

谢谢。

2 个答案:

答案 0 :(得分:1)

<script src='static/Chart.bundle.js'></script>

检查浏览器开发人员工具的“网络”选项卡,以查看是否正在加载Chart.bundle.js。您可能会收到404响应,因为上述URL是相对URL,并将被附加到父页面的URL。相反,您应该使用web2py URL助手来生成所有内部URL:

<script src="{{=URL('static', 'Chart.bundle.js')}}"></script>

上面的代码应生成一个类似/appname/static/Chart.bundle.js的URL(如果您将路由配置为默认为该应用,则appname将被排除。)

答案 1 :(得分:0)

您试图以错误的方式创建它,您不能仅指定图表ID并使用它。您需要的是ctx(画布元素的上下文)。看看如何使用它:

$("#chartjs-radar").get(0).getContext('2d');

document.getElementById('chartjs-radar').getContext('2d');

在创建图表时使用此名称代替id。 (然后,您只能使用chart.js,而不是捆绑包)

相关问题