Python 我想在我自己的文本中允许html,但该文本正在转义
我的html模板包含以下代码Python 我想在我自己的文本中允许html,但该文本正在转义,python,google-app-engine,html-escape-characters,Python,Google App Engine,Html Escape Characters,我的html模板包含以下代码 <a href="{{ url }}">{{ url_linktext }}</a>{{url_linktextmore}} {{url\u linktextmore} 我的Python代码包含以下代码段 class MainPage(webapp.RequestHandler): def get(self): url_linktextmore = ' after you sign
<a href="{{ url }}">{{ url_linktext }}</a>{{url_linktextmore}}
{{url\u 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))
类主页(webapp.RequestHandler):
def get(自我):
url_linktextmore='在您登录后您可能错卖了您的团队强>'
模板_值={
“url”:url,
“url\u linktext”:url\u linktext,
“url\u linktextmore”:url\u linktextmore,
}
path=os.path.join(os.path.dirname(_文件__),'place.html')
self.response.out.write(template.render(路径、模板值))
我的问题是自动模板系统正在转义strong
(例如,<转换为
),我不知道如何保留粗体类型。这似乎适用于我的应用程序的早期版本,但仅此而已
这可能与“魔术语录”有关,但我不知道如何关闭“功能”
亚特兰大的Brian如果使用Jinja2模板,可以执行以下操作:
{{ url_linktext|safe }}
有关Jinja2 HTML转义,请参阅
请注意,只有将“自动转义”扩展添加到jinja2环境中时,才需要“安全”筛选器。例如:
JINJA_ENVIRONMENT = jinja2.Environment(
loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
extensions=['jinja2.ext.autoescape'])
删除此扩展可能更适合您。OP最好保持自动转义,因为在某些情况下,他可能不希望用户发布不安全的文本。按照您的建议,使用
保存
,不仅有助于我给出的示例,而且更重要的是修复了我刚刚注意到的验证码问题。