我试图调试为什么Bottle无法再找到模板,但它并没有告诉我实际上缺少哪个模板:
File "/virtualenv/lib/python2.7/site-packages/bottle.py", line 3222, in __init__
raise TemplateError('Template %s not found.' % repr(name))
bottle.TemplateError
控制台和网页都不包含Template %s not found.
的格式化版本。
我已启用调试(禁用调试时,堆栈跟踪不会显示在网页上)。
路由处理程序实际上只是@bottle.post('/request')
。
这与How to make Bottle print stacktrace when running through apache modwsgi?不同,因为答案是启用调试。
使用最新的稳定瓶,0.12.13。
答案 0 :(得分:0)
这对我有用 - 你的代码是否大不相同?希望你能发现差异。
from bottle import Bottle, template
app = Bottle()
@app.route('/')
def home():
return template('foo') # template "foo" does not exist
app.run(host='127.0.0.1', port=8080) # Note: no debug required
响应:
% curl http://127.0.0.1:8080/
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
<head>
<title>Error: 500 Internal Server Error</title>
<style type="text/css">
html {background-color: #eee; font-family: sans;}
body {background-color: #fff; border: 1px solid #ddd;
padding: 15px; margin: 15px;}
pre {background-color: #eee; border: 1px solid #ddd; padding: 5px;}
</style>
</head>
<body>
<h1>Error: 500 Internal Server Error</h1>
<p>Sorry, the requested URL <tt>'http://127.0.0.1:8080/'</tt>
caused an error:</p>
<pre>Template 'foo' not found.</pre>
</body>
</html>
请注意,错误消息包含缺少的模板名称:
找不到模板'foo'。