我有一个数据库字段存储另一个web应用程序(即与django无关)使用的xml块。我需要把xml块插入页面正在使用的javascript中。在
在我的模板中:
var netdata = "{% filter addslashes %}{{netdata}}{% endfilter %}"
{my database}中的{和多行}类似。“addslashes”过滤器处理引号,我想。在
上面给出了“unterminated string literal”错误。(大概是因为新线的缘故)。我需要做些什么才能将整个xml块,新行和所有内容,转换成一个有效的javascript变量?在
对于更多上下文,我尝试使用CytoscapeWeb。在文件中化合物.js在那个演示中,他们得到的数据如下:
^{pr2}$其中url是the same as above。在
我尝试做一个类似的事情,但是通过django模板从我的数据库中传递数据(跳过整个“获取外部文件”部分)。在
(我不想在存储到数据库之前对xml进行解析,所以请不要这样做)。在
您可能应该使用^{} filter 而不是addslashes。另请注意,您可以直接过滤变量:
您的问题是生成的javascript是一个“多行字符串”,除非您像这样对每一个新行进行转义,否则javascript无法做到这一点:
因此,在打印xml字符串之前,可以用
\
和一个新行替换每一个新行,也可以完全删除新行。在我相信
escapejs
过滤器可以为您做到这一点。{{ netdata|escapejs }}
相关问题 更多 >
编程相关推荐