python - jinja2 + 重构标记

标签 python html flask jinja2 restructuredtext

思路如下。我使用类似于 stackoverflow 的标签向 jinja2 发送一些文本。我如何告诉 jinja2 将它们视为包含文本的标记并在 html 中生成粗体、斜体等文本?

谢谢。

最佳答案

我习惯了django-markdown ,所以我认为使用过滤器是实现此目的的好方法:

   <div class="content">{{ article.body|rst }}</div>

我不知道 jinja2 是否存在这样的过滤器,但是 it should be very easy to write .我猜这行(未经测试的代码):

from docutils.core import publish_parts
import jinja2

def rst_filter(s):
    return jinja2.Markup(publish_parts(source=s, writer_name='html')['body'])
environment.filters['rst'] = rst_filter

关于python - jinja2 + 重构标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11309885/

相关文章:

python - 使用 numpy.fft VS 计算信号 PSD 的前置因素。 scipy.signal.welch

python - 在 Jenkins shell 中执行 Flask 运行而不超时

python - Vim 没有正确缩进 Python——Flask 应用程序、Trisquel Mini GNU/Linux、lxterminal

python - 按 future 30 天和过去的日期过滤查询集

python - 有两个程序的 GUI 类

python - 将 ISO 8601 数据的 Pandas 列转换为秒

html - 一个网站的域名 - 谷歌搜索结果

html - CSS 有选择地应用样式

html - CSS 不透明度在这种情况下不起作用

python - 如何根据表单输入更新现有的Python Flask网页?