我想允许在我自己的文本中使用html,但该文本正在转义

2024-10-03 06:29:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我的html模板包含以下代码

<a href="{{ url }}">{{ url_linktext }}</a>{{url_linktextmore}}

我的Python代码包含以下代码段

class MainPage(webapp.RequestHandler):
    def get(self):
                        url_linktextmore = '  after you signin. <strong> You may have mispelled your group. </strong>'
                    template_values = {
                        'url': url,
                        'url_linktext': url_linktext,
                        'url_linktextmore': url_linktextmore,
                        }
                    path = os.path.join(os.path.dirname(__file__), 'place.html')
                    self.response.out.write(template.render(path, template_values))

我的问题是strong正在被转义(例如,<;由自动模板系统转换为&lt;),我不知道如何保留粗体类型。这似乎在我的应用程序的早期版本中起作用,但不再有效

这可能与“魔术语录”有关,但我不知道如何关闭“功能”

布莱恩在亚特兰大


Tags: path代码ltself模板urloshtml
1条回答
网友
1楼 · 发布于 2024-10-03 06:29:47

如果您使用的是Jinja2模板,可以执行以下操作:

{{ url_linktext|safe }}

请参阅this link了解Jinja2 HTML转义

请注意,只有在jinja2环境中添加了“autoescape”扩展时,才需要“safe”筛选器。例如:

JINJA_ENVIRONMENT = jinja2.Environment(
    loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
    extensions=['jinja2.ext.autoescape'])

删除此扩展可能更适合您

相关问题 更多 >