富文本编辑器提交的文章数据是包含 HTML 标签的吗?

《Flask Web 开发实战》第258页最下面一行写到:

“Bluelog提供了富文本编辑器来撰写文章,文章包含的各种样式是通过HTML标签实现的,为了让Jinja2把这些文本当作HTML代码来渲染,需要使用safe过滤器。”

那么,如果在jinja2中使用了这个过滤器,那么在数据库中存储的博客正文内容是 包含了html标签的文本吗?

并且,
class Post(db.Model):

body = db.Column(db.Text)

某一篇博客正文内容是直接一次性地存储在这个body中吗

那么在数据库中存储的博客正文内容是 包含了html标签的文本吗?

是的。

某一篇博客正文内容是直接一次性地存储在这个body中吗?

是的。

编辑器界面有一个 Source 按钮/图标,可以查看当前编辑文本的源码(也就是你最终存储的文本)。

编辑器会对输入内容做安全过滤,如果是接受其他用户输入的数据,可以额外用 bleach 过滤(第 11 章介绍 Markdown 支持的部分有相关介绍)用户提交的文章数据。

1 Like

谢谢,懂了!

另外,还想问下:

1、超喜欢这个主页,想问下,管理员如果登陆后,看到的可编辑页面,是否如下图所示(如果不是,可以展示下该页面的可编辑页面吗):

2、入门教程的《 Grey Li’s Watchlist》主页面使用了 current_user.is_authenticated 对每一条电影的“Edit”和“Del”按钮做了限制,即未登录时是看不到这两个按钮的。我自己做的时候,是否可以修改下:单独做一个没有“Edit”和“Del”按钮的页面,用于给浏览者观看;另外做一个包含“Edit”和“Del”按钮的页面用于管理员的后台管理。我这样也可以吗,会不会太搞笑了。

那个页面其实是一篇文章:

单独做一个没有“Edit”和“Del”按钮的页面,用于给浏览者观看;另外做一个包含“Edit”和“Del”按钮的页面用于管理员的后台管理。我这样也可以吗

可以的。如果不想自己写,也可以用 Flask-Admin,只需要几行代码就可以生成后台管理。

1 Like

Thank you Master! :innocent:

1 Like

辉哥,这个图片的正文字段使用的是 Flask-CKEditor 吗?

谢谢!

我的网站用的是 Wordpress(PHP),编辑器是 TinyMCE。