获取python程序的500个未定义索引页
当我复制并遵循这个应用程序时,我正在浏览Python教程 文件结构如下:获取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
./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/'])