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

使用Django/Flask时HTML代码无法渲染,显示源码问题求助

问题原因及解决办法

核心原因

你没有使用框架的模板渲染机制,而是直接将HTML代码以纯文本字符串的形式返回给浏览器。浏览器接收到纯文本后,会原样显示所有标签内容,不会解析成HTML元素。

Django 相关说明与解决

  • 你说得对,Django中负责加载并渲染模板的正是render()方法。如果你的视图函数用HttpResponse()直接返回HTML文件的内容(比如手动读取文件后返回字符串),就会出现这个问题。
  • 正确做法:在视图函数中使用render(request, '模板文件名.html'),示例:
    from django.shortcuts import render
    
    def index(request):
        return render(request, 'index.html')
    
  • 同时确认模板配置正确:
    • 在项目settings.py的TEMPLATES配置中,APP_DIRS设为True
    • 你的应用已添加到INSTALLED_APPS列表
    • 模板文件放在应用目录下的templates文件夹中(或项目根目录的templates,并在TEMPLATES的DIRS里配置对应路径)

Flask 相关解决

  • Flask中需要使用render_template()方法返回模板,而不是直接用return返回HTML字符串,示例:
    from flask import Flask, render_template
    
    app = Flask(__name__)
    
    @app.route('/')
    def index():
        return render_template('index.html')
    
  • 确保模板文件放在项目根目录的templates文件夹下,Flask默认会读取这个目录的模板文件。

内容的提问来源于stack exchange,提问作者Lalo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 04:35:07