问题描述
我需要在网页中用高亮显示一些代码。 我正在使用Flask,发现可以使用 。 效果很好,但我有一些问题。
我试过了
{% highlight 'python' %}
{{ item.text }}
{% endhighlight %}
似乎可以正常工作,我有40行代码,但所有特殊字符(如&#34 ...)都显示如下。 因此,将| safe添加到行{{item.text}}。 现在,所有字符都可以,但是我看不到完整的代码,只有5行(第五行已完成)。
我想我知道问题出在哪里,但不知道如何解决。
我的代码中有一些行,例如或,似乎没有转义。 知道jinja2为什么不能逃避<>吗?
我也不清楚| safe的安全性问题。 服务器有什么风险?
1楼
item.text|safe
应该会有所帮助。
您似乎在两次转义了代码。
您可能启用了某种自动转义功能。
只要您不共享站点的实际代码,就不必担心服务器的安全性。