我使用'messages'界面来传递消息给用户,就像这样:
request.user.message_set.create(message=message)
我想在我的{{message}}变量中包括html,并在不转义模板中的标记的情况下呈现它。
我使用'messages'界面来传递消息给用户,就像这样:
request.user.message_set.create(message=message)
我想在我的{{message}}变量中包括html,并在不转义模板中的标记的情况下呈现它。
当前回答
你可以像这样在你的代码中渲染一个模板:
from django.template import Context, Template
t = Template('This is your <span>{{ message }}</span>.')
c = Context({'message': 'Your message'})
html = t.render(c)
更多信息请参阅Django文档。
其他回答
你可以像这样在你的代码中渲染一个模板:
from django.template import Context, Template
t = Template('This is your <span>{{ message }}</span>.')
c = Context({'message': 'Your message'})
html = t.render(c)
更多信息请参阅Django文档。
最简单的方法是使用安全过滤器:
{{ message|safe }}
有关安全过滤器的更多信息,请参阅Django文档。
使用autoescape关闭HTML转义:
{% autoescape off %}{{ message }}{% endautoescape %}
如果你不希望HTML被转义,看看安全过滤器和autoescape标签:
安全:
{{ myhtml |safe }}
自动逃生:
{% autoescape off %}
{{ myhtml }}
{% endautoescape %}
安全过滤器帮我解决了这个问题。 使用{{data|safe}}包含html。