Python 将纯文本显示为 html

Python display plain text as html

我要做一个笔记应用程序,所以我决定为此使用 summernotepython flask。 我有一个表单,用户必须使用 summernote textarea 输入标题和内容,然后将输入存储在数据库中。 我遇到的问题是当我尝试显示以纯文本形式出现的注释时

这是我显示它们的方式

            {% for foo in notes %}
                <div class="card">
                    <div class="card-header">
                        <div class="card-title">{{ foo.title }}</div>
                    </div>
                    <div class="card-body">
                        <div class="ribbon-wrapper ribbon-lg">
                        <div class="ribbon bg-primary">
                            <p>{{ foo.category_name }}</p>
                        </div>
                    </div>
                        {{ foo.content }}
                    </div>
                    <div class="card-footer">
                        <a href="#" class="btn btn-info btn-xs"><i class="fas fa-eye"></i></a>
                        <a href="#" class="btn btn-danger btn-xs"><i class="fas fa-trash"></i></a>
                    </div>
                </div>
            {% endfor %}

有什么方法可以实际呈现 HTML 内容而不是将其显示为纯文本?

使用 Jinja 的 safeescape 过滤器

https://jinja.palletsprojects.com/en/2.10.x/templates/?highlight=safe#safe

https://jinja.palletsprojects.com/en/2.10.x/templates/?highlight=safe#escape

{{ foo.content | safe }}   
{{ foo.content | escape }}   

始终注意信任用户输入:https://flask.palletsprojects.com/en/1.1.x/security/