Django模板{{Peoples}}无法在HTML页面渲染后端数据求助
Django模板渲染异常:变量无法渲染后端数据
问题概况
- 后端
views.py已编写包含字典的视图函数,准备传递数据到前端模板 - HTML页面中使用
{{peoples}}变量调用数据,但本地服务器运行时无法正常渲染数据 - 涉及代码包含:视图函数代码、HTML模板代码、浏览器渲染结果截图
排查与解决步骤
- 严格匹配变量大小写:Django模板变量区分大小写,检查后端上下文传递的变量名(是
Peoples还是peoples)与模板中使用的变量名完全一致,比如后端传{'Peoples': data},模板就必须用{{ Peoples }},反之同理。 - 确认上下文传递正确:确保视图函数返回
render时,已将变量正确放入上下文字典,示例代码:
def index(request): peoples = [{'name': 'Alice'}, {'name': 'Bob'}] # 第三个参数必须是包含变量的字典 return render(request, 'index.html', {'peoples': peoples})
- 验证模板加载配置:检查项目
settings.py中TEMPLATES配置的DIRS是否包含模板所在目录,确保视图指定的模板路径正确。 - 查看服务器错误日志:启动本地服务器时观察控制台输出,排查是否有模板加载失败、上下文传递异常等报错信息。
- 用简单变量测试渲染功能:先传递一个简单字符串变量(如
{'test': '测试内容'})到模板,用{{ test }}渲染,确认模板基础渲染功能正常后,再排查复杂数据类型的问题。
内容的提问来源于stack exchange,提问作者Sagar Badhe
相关产品推荐
相关产品推荐

