我想在我自己的文本中允许 html 但该文本正在被转义
I want to allow html in my own text but that text is being escaped
我的 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
被自动模板系统转义(例如,< 被转换为 <
),我不知道如何保留粗体。这似乎适用于我的应用程序的早期版本,但现在不行了。
这可能与 "magic quotes" 有关,但我不知道如何关闭 "feature"。
布莱恩在亚特兰大
如果您使用的是 Jinja2 模板,您可以执行以下操作:
{{ url_linktext|safe }}
有关 Jinja2 HTML 转义,请参阅 this link。
请注意,仅当您将 'autoescape' 扩展添加到您的 jinja2 环境时才需要 'safe' 过滤器。例如:
JINJA_ENVIRONMENT = jinja2.Environment(
loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
extensions=['jinja2.ext.autoescape'])
删除此扩展程序可能更适合您。
我的 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
被自动模板系统转义(例如,< 被转换为 <
),我不知道如何保留粗体。这似乎适用于我的应用程序的早期版本,但现在不行了。
这可能与 "magic quotes" 有关,但我不知道如何关闭 "feature"。
布莱恩在亚特兰大
如果您使用的是 Jinja2 模板,您可以执行以下操作:
{{ url_linktext|safe }}
有关 Jinja2 HTML 转义,请参阅 this link。
请注意,仅当您将 'autoescape' 扩展添加到您的 jinja2 环境时才需要 'safe' 过滤器。例如:
JINJA_ENVIRONMENT = jinja2.Environment(
loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
extensions=['jinja2.ext.autoescape'])
删除此扩展程序可能更适合您。