Summernote 无法转换 html 代码

Summernote fail to convert html code

我使用 bottle 和 peewee 作为后端框架,sqlite3 作为数据库。而summernote就是最前面的文本编辑器。成功将代码保存到数据库中,但从数据库中检索时显示文本失败。

数据库数据: The Draft column is the html

源代码:

前面:

$('#summernote').summernote("code", "{{content}}");

后端:

template('apps_post_editer', appName='Post New', pid=newPost.id, title=('' if newPost.title is None else str(newPost.title)), content=('' if newPost.draft is None else unicode(str(newPost.draft), "utf-8")))

一开始以为是编码问题,所以用unicode转utf-8里面的值,但是不行。而且也只失败了 str(newPost.draft)

结果: You can see that the html code is not converted

问题: 为什么会这样?有什么解决办法吗?

非常感谢。

更新:抱歉这是我的第一个问题,不知道为什么图片不显示...请点击link了解更多详情... 好的...需要 10 声望

当你想用bottle渲染来自数据库的HTML时,你必须告诉渲染引擎该内容是可以安全渲染的,以避免XSS攻击。

使用 bootle,您可以禁用像这样的表达式的转义:

{{! summernotecontent}}

在你的情况下是:

 $('#summernote').summernote("code", "{{! content}}");

您可以在 bottle here

中找到有关此主题的文档