获取python程序的500个未定义索引页

获取python程序的500个未定义索引页,python,web,bottle,Python,Web,Bottle,当我复制并遵循这个应用程序时,我正在浏览Python教程 文件结构如下: ./app ├── views/ │ ├── index.tpl ├── index.py └── guestbookDAO.py index.py guestbookDAO.py index.tpl 欢迎来到MongoDB 正文{字体系列:无衬线;颜色:#4f494f;} 表单输入{边界半径:7.5px;} h5{显示:内联;} .label{text align:right} .guestbook

当我复制并遵循这个应用程序时,我正在浏览Python教程

文件结构如下:

./app
 ├── views/
 │     ├── index.tpl
 ├── index.py
 └── guestbookDAO.py
index.py

guestbookDAO.py

index.tpl


欢迎来到MongoDB
正文{字体系列:无衬线;颜色:#4f494f;}
表单输入{边界半径:7.5px;}
h5{显示:内联;}
.label{text align:right}
.guestbook{float:左;padding top:10px;}
.name{width:100%;float:left;padding top:20px}
欢迎来到MongoDB!
姓名:
电邮:
嘉宾:
%对于mynames中的名称:
名称:{{Name['Name']}},
电子邮件:{{name['Email]']}
%结束

导致此问题的路由或模板定义有何错误?

模板中有一个输入错误。替换:

<h5>Email:</h5> {{name['email]']}}
Email:{{name['Email]']}
与:

Email:{{name['Email']}

希望有帮助。

您应该将模板位置的绝对路径添加到
模板路径中:

bottle.TEMPLATE_PATH.insert(0,'/absolut/path/to/your/templates/')
找不到瓶子模板()

瓶子在/和/视图/中搜索模板。在mod_python或 mod_wsgi环境中,工作目录(./)取决于您的 Apache设置

因此,将
index.py
更改为:

import os
# Add these lines before `bottle.run` line.
BASE_DIR = os.path.abspath(os.path.dirname(__file__))
template_path = os.path.join(BASE_DIR, 'views')
bottle.TEMPLATE_PATH.insert(0, template_path)
...
...
bottle.debug(True)
bottle.run(host='localhost', port=8082) 
注意:如果从项目的根目录运行
python index.py

mongoguestbook$ ls -la
 guestbookDAO.py
 guestbookDAO.pyc
 index.py
 README.md
 views
mongoguestbook$ python index.py
然后,您不需要将上述代码添加到
index.py
,因为
FAQ
中描述的
瓶子.TEMPLATE_PATH
的默认值是:

print(bottle.TEMPLATE_PATH)
# ['./', './views/'])

但是如果您添加了它们,那么您可以从root
$python index.py
或任何地方运行它:
$python~/workspace/so/mongoguestbook/index.py
在同一目录下运行
index.py
,例如,运行
python index.py
,不要运行
python/same/directory/index.py


这个问题发生在我身上

谢谢,这个问题可能是,它不会影响python路由,我无法通过localhost加载应用程序:8082@user2167582您得到的错误页是什么?错误:500内部服务器错误抱歉,请求的URL“”导致错误:找不到模板“索引”。我对瓶子一无所知,但我必须假设这在你的模板中不是问题。你有可以发布的堆栈跟踪吗?我是否应该在瓶子路径上方添加瓶子模板_PATH.insert(0,'/PATH/to/app/views')?
bottle.TEMPLATE_PATH.insert(0,'/absolut/path/to/your/templates/')
import os
# Add these lines before `bottle.run` line.
BASE_DIR = os.path.abspath(os.path.dirname(__file__))
template_path = os.path.join(BASE_DIR, 'views')
bottle.TEMPLATE_PATH.insert(0, template_path)
...
...
bottle.debug(True)
bottle.run(host='localhost', port=8082) 
mongoguestbook$ ls -la
 guestbookDAO.py
 guestbookDAO.pyc
 index.py
 README.md
 views
mongoguestbook$ python index.py
print(bottle.TEMPLATE_PATH)
# ['./', './views/'])