提问人:pwoods 提问时间:10/26/2023 最后编辑:pwoods 更新时间:10/26/2023 访问量:48
Flask 未呈现模板,尽管没有错误
Flask not rendering template despite no errors
问:
Flask 正在运行,一切都在运行,直到需要渲染我的模板化,但它没有做任何事情。
因此,我有一个为类项目创建的 HTML 文档,现在我正在尝试链接 MySQL 数据库以检索一些表并将它们放入 HTML 文档中。到目前为止,我已经成功地使用 pandas 将表格从 MySQL 转换为 python 中的 HTML 语法字符串:
for x in result:
df2 = pd.DataFrame(list(x)).T
df = pd.concat([df,df2])
pdTable = df.to_html()
但是,当涉及到我的 app.py 时,我将 pdTable 导入 app.py 并尝试使用 render_template 将其呈现到 HTML 文档中,但它似乎什么也没做:
from flask import Flask, render_template
import DBConnect
app = Flask(__name__)
print(DBConnect.pdTable)
@app.route('/')
def sqlTable():
return render_template("indexCopy.html", pandas_table=DBConnect.pdTable)
if __name__ == '__main__':
app.run()
我的indexCopy.html位于 app.py 所在目录的文件夹(templates)中, 在我的 HTML 文档中,据我所知,这就是您应该如何进行表达式:
<div class="employeeTable">
<a id="Employee"><h2>Employee</h2></a>
{{ pandas_table|safe }}
</div>
我已经在这个路障上呆了几个小时了,只是无法弄清楚这一点。任何帮助将不胜感激!
更新
已发现问题。这与我对 Flask 应用程序工作方式的困惑有关。我最初认为 flask 会覆盖 HTML 文件 HTML,这就是为什么我如此困惑的原因,我打开 indexCopy.html 认为它应该被覆盖。我没有意识到您需要打开烧瓶服务器,即。127.0.0.1:5000. 一旦我发现一切都在按应有的方式呈现。希望这对任何有类似问题/困惑的人有所帮助。
答: 暂无答案
评论
{'pandas_table': DBConnect.pdTable}
pandas_table=DBConnect.pdTable
return render_template("indexCopy.html", {'pandas_table': DBConnect.pdTable})
{'pandas_table': 'hello'}