You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django模板调用函数返回HTML标签无法正常渲染的问题求助

问题描述

我期望Django视图仅返回HTML标签,编写了如下代码:

def load_tags():
   return httpresponse("<span>span tag</span>")

def home(request):
   return render(request, 'index.html',{"func":load_tags()})

对应的HTML文件代码:

<h2>Calling python function {{ func }} </h2>

实际在浏览器中显示结果:

Calling python function <HttpResponse status_code=200, "text/html; charset=utf-8">

期望的显示效果:

Calling python function span tag

恳请帮忙实现该功能。

解决方案

问题根源在于load_tags()返回的是HttpResponse对象,模板渲染时会输出该对象的字符串形式,而非其中的HTML内容。按以下方式修改即可解决:

  • 调整load_tags()函数,让它直接返回HTML字符串,而非HttpResponse实例:
def load_tags():
   return "<span>span tag</span>"
  • Django模板默认会转义HTML内容,需使用safe过滤器告知模板保留原HTML格式:
<h2>Calling python function {{ func|safe }} </h2>

修改完成后,浏览器就能正确渲染出期望的span tag内容。

内容的提问来源于stack exchange,提问作者Tariq Jamal A

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 23:10:25