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

Flask运行时调用render_template无法渲染HTML问题求助

问题排查结果

产生原因

  • 路由定义语法错误:Flask 路由依赖@app.route()装饰器完成视图函数和URL路径的绑定,代码中路由行漏写了装饰器必需的@符号,写成了app.route('/'),导致根路径没有绑定对应的index视图函数,请求根本不会走到模板渲染逻辑。
  • 模板目录不符合默认规则:Flask 默认会从与运行脚本同级的templates文件夹中查找render_template传入的HTML文件,如果index.html没有放在该目录下,即使路由配置正确也会抛出模板找不到的错误,无法完成渲染。

修复方案

  1. 补全路由装饰器的@符号,修正后的完整代码如下:
from flask import Flask,render_template
import psycopg2
import psycopg2.extras

app = Flask(__name__)

# 路由前补@装饰器标记
@app.route('/')
def index():
    return render_template('index.html')

if __name__ == "__main__":
    app.run(debug=True, port=9001)
  1. 调整项目目录结构,符合Flask默认模板查找规则,参考结构:
项目根目录/
├── app.py  # 你的Flask运行脚本
└── templates/
    └── index.html  # 要渲染的HTML页面

如果需要自定义模板存放路径,可以在初始化Flask实例时手动指定:

# 替换为你实际存放HTML文件的文件夹路径
app = Flask(__name__, template_folder='你的自定义模板目录路径')

验证方式

保存修改后重新运行脚本,在浏览器访问http://127.0.0.1:9001即可正常看到渲染后的HTML页面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 08:18:28