pythonanywhere+;flask:网站上只是说';未处理的异常';。如何让调试器打印堆栈跟踪?
提前得到三重新手威胁的警告-python新手、flask新手、flask新手 [pythonanywhere root]/mysite/test01.pypythonanywhere+;flask:网站上只是说';未处理的异常';。如何让调试器打印堆栈跟踪?,python,flask,pythonanywhere,Python,Flask,Pythonanywhere,提前得到三重新手威胁的警告-python新手、flask新手、flask新手 [pythonanywhere root]/mysite/test01.py # A very simple Flask Hello World app for you to get started with... from flask import Flask from flask import render_template # for templating #from flask import request
# A very simple Flask Hello World app for you to get started with...
from flask import Flask
from flask import render_template # for templating
#from flask import request # for handling requests eg form post, etc
app = Flask(__name__)
app.debug = True #bshark: turn on debugging, hopefully?
@app.route('/')
#def hello_world():
# return 'Hello from Flask! wheee!!'
def buildOrg():
orgname = 'ACME Inc'
return render_template('index.html', orgname)
然后在[pythonywhere root]/templates/index.html中
<!doctype html>
<head><title>Test01 App</title></head>
<body>
{% if orgname %}
<h1>Welcome to {{ orgname }} Projects!</h1>
{% else %}
<p>Aw, the orgname wasn't passed in successfully :-(</p>
{% endif %}
</body>
</html>
Test01应用程序
{%if orgname%}
欢迎来到{{orgname}}项目!
{%else%}
啊,组织名称没有成功传入:-(
{%endif%}
当我访问该站点时,我得到“未处理的异常”:-(
如何让调试器至少指出应该从何处开始查找问题?您还需要将模板中使用的
orgname
变量的名称传递给渲染模板
:
所以,改变这一行:
return render_template('index.html', orgname)
致:
问题是只需要一个位置参数,其余参数作为仅关键字参数传递。因此,您需要将代码更改为:
def buildOrg():
orgname = 'ACME Inc'
return render_template('index.html', name=orgname)
对于第一部分,您可以在pythonanywhere.com上的Web
选项卡下找到错误日志。查看“Web”选项卡下的错误日志。omg…thx!上面写着“TypeError:render_template()接受1个位置参数,但给出了2个“…类方法是否希望第一个参数为self?”hrm…此外,我希望接受您的注释作为答案,因为我可以看到其中的所有python错误。如果您将其作为答案重述,我会将其标记为已接受:)我已经发布了一个答案。谢谢Omid。它不起作用:2014-03-26 19:08:40801:return render_template('index.html',orgname=orgname)2014-03-26 19:08:40801:TypeError:render_template()接受1个位置参数,但2个被再次给出Omid-结果证明你是对的!!我的templates文件夹位于错误的位置-我错误地阅读了Flask quickstart guide。一旦它位于正确的位置,第二个参数设置为orgname=orgname就工作得很好。谢谢!接受,因为它指向了错误日志。但是重新设置的修复程序nder_模板不工作(请参阅我对Omid Raha的回复)..@user3465444您是否也在其他地方修复了此错误?(并且在进行更改后不要忘记重新加载应用程序)嗨…orgname=orgname param毕竟起作用了;问题是我的templates文件夹不在正确的位置。一旦我移动了它,一切都起作用了。耶!谢谢你的帮助。
return render_template('index.html', orgname=orgname)
def buildOrg():
orgname = 'ACME Inc'
return render_template('index.html', name=orgname)