django redirect传递参数_python-django与前端echarts图表传参

一、利用django往前端的web图表传参

因为echarts其核心是利用js的底层技术,所以python-django往前端的echarts传递参数又可以转化成python-django像前端的js传递参数的问题,这里介绍一种很简单的方法。

二、

1、方法核心:通过django往前端传递参数的方法,先在view.py视图函数中写好要传递的参数,如下代码所示:

def index(request):
return render(request, 'FRCAS.html',
{'b':["02A01","02A02","02A03","02A04"],'c':[12, 20, 15, 8]},
)

以下仅展示前端需要的代码:

<script src="static/js/echarts.js"></script>

如下是echarts官网给出的代码示例:

<script type="text/javascript">
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '车型严重故障'
},
tooltip: {},
legend: {
data:['清客'] // data是一定要有的,可以更改
},
xAxis: {
data: {{ b|safe }} // data是一定要有的,可以更改
},
yAxis: {},
series: [{
data: {{ c|safe }}, // data是一定要有的,可以更改
type: 'bar',
showBackground: true,
label: {
normal: {
show: true,
position: 'top'
}
},
backgroundStyle: {
color: 'rgba(220, 220, 220, 0.8)'
}
}]
};
// 使用刚指定的配置项和数据显示图表。myChart.setOption(option);
</script>
</div>

0789d22a9a35cff9f1534a419779991a.png

我们要传递的参数是在data中的内容,但是要注意,如果直接写{{b}},那么js会认为这是不安全的参数传递,启动后在python中会报错。

所以这里必须写成是:{{ b|safe }}必须加上|safe才可以

另外一提,如果前端的内容是一个输入框,

例如:<input type="text" name="a" value={{a}}>这样写是没有问题的,因为django不会对html传参有任何的影响(详见上篇内容)

47fedf659e7ee5f245f776e1bfc86240.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值