我正在尝试将URL模板标记包含在我使用format_html方法创建的字符串中:
<a href="{ url 'accounts:detail' pk=4}">profile</a>
输出到浏览器的html如下所示:
{%% url 'accounts:detail' pk={2} as profile_url %%}
基本上我没有%'s的网址标记。
我尝试输入以下内容来逃避%:
System
但我收到了相同的输出。
有什么想法吗?
答案 0 :(得分:0)
您应该尝试使用
{{ profile_url|safe }}
或使用{% autoescape %}
Autoescappe
答案 1 :(得分:0)
您可以使用reverse()
直接创建网址:
message = format_html(
'''<div>
<p>{0} wants to join {1}!</p>
<p>
View their
<a href="{2}">profile</a>
</p>
<div>Approve</div>
<div>Deny</div>
</div>
''',
self.request_user.username,
self.lab.name,
reverse('accounts:detail', kwargs={'pk':self.request_user.pk})
)