500尝试使用Flask/mod_wsgi将Python对象传递到HTML时出错
我使用mod_wsgi在Apache上运行了一个Flask应用程序。我正在尝试将我创建的对象传递到模板,如下所示:500尝试使用Flask/mod_wsgi将Python对象传递到HTML时出错,python,apache,flask,jinja2,mod-wsgi,Python,Apache,Flask,Jinja2,Mod Wsgi,我使用mod_wsgi在Apache上运行了一个Flask应用程序。我正在尝试将我创建的对象传递到模板,如下所示: @app.route('/<user>') def viewUser(user): return render_template('viewuser.html', user = buildUser(user)) Hello, {{ user.name }}! 这在本地Flask服务器上运行得非常好,但是当我尝试访问类似的内容时,我的浏览器返回“500内部服务
@app.route('/<user>')
def viewUser(user):
return render_template('viewuser.html', user = buildUser(user))
Hello, {{ user.name }}!
这在本地Flask服务器上运行得非常好,但是当我尝试访问类似的内容时,我的浏览器返回“500内部服务器错误”
否则模板工作正常-例如,如果我将view函数返回值更改为:
return render_template('test.html', user = user)
test.html包含:
Hello, {{ user }}!
一切都显示正确。(显示“你好,TestUser!”)
有人知道为什么传递简单值在带有mod_wsgi的Apache上有效,而传递对象只在非生产Flask服务器上有效吗?可以是任何东西。Apache日志中有什么内容吗?你能启用调试模式吗?打开了除格,在我的Apache日志中发现了一些Python错误。这打开了一个全新的蠕虫程序,但在问更多问题之前,我会尝试解决它。什么是
buildUser
?我有一个用户类,包含用户名、名字、姓氏等字段。buildUser是一个函数,它使用用户名,通过一些MySQL查询来获取更多信息,然后返回一个完全填充的用户对象。结果表明,buildUser中存在一些错误,Flask服务器能够处理这些错误(使用所需的行为),但mod_wsgi无法处理这些错误。我把一切都修好了,现在一切都很好。谢谢@DanielRoseman!