如何在Django模型中呈现存储的Javascript代码?

时间:2017-09-01 20:46:24

标签: python django django-models django-templates

我正在使用django进行研究,并且需要大约12或13个小时的昂贵计算过程并生成javascript图表。

我使用管理命令进行计算,并将模型中的图表存储为TextField。

我的问题是如何在模板上显示这个javascript代码?

我尝试在普通的javascript文本中使用{{ variable_name }}结果

我也尝试过使用

<script type="javascript"> {{ variable_name }} </script>

导致带有特殊字符的文字。

2 个答案:

答案 0 :(得分:1)

必须使用safe过滤器或所有&#34; dangerous&#34;来完成django模板中代码的渲染。代码将被转义。

此处的文档为:https://docs.djangoproject.com/en/1.11/ref/templates/builtins/#safe

尝试并检查&#34;查看源&#34;上生成的html。浏览器上的设施。如果正确解析了javascript,请检查开发人员控制台以查看任何错误

答案 1 :(得分:0)

我不确定结果是否是有效的javascript对象,但基本上你要做的是把它放在javascript中的变量中:

<script type="javascript">
    var my_obj = {{ data.word_graph }}
</script>

请注意,如果data.word_graph的内容不是有效的javascript对象(例如,您可以使用json.dumps(python_obj)),它将无效。