我需要从github的私人仓库安装Pyramid项目。
项目的结构如下:
project_name project_name models/ views/ templates/ __init__.py setup.py
我执行了git clone
,然后pip install project_name
从virtualenv
的本地仓库安装它。
然后我用pserve production.ini
启动服务器,它启动没有问题。
但是,我在查找mako模板时遇到问题......
我收到错误:
TopLevelLookupException: Cant locate template for uri for `home.mak`
另外,我注意到在我安装项目的site_packages
内,除了templates/
目录之外,所有文件都被复制了。为什么会这样?
在我的production.ini
中,我有指令......
mako.directories = my_project:templates
在我的视图功能中,我正在做这样的事情:
@view_config(route_name='home', renderer="home.mak")
def home_view(req):
...
为什么我收到此错误?
更新
当我手动将templates
文件夹复制到env/lib/python3.2/site-packages/my_pproject/
时 - 一切正常。
因此,我的问题是:为什么在安装软件包时不会复制templates
目录?
答案 0 :(得分:1)
我需要添加MANIFEST.in
文件,这对于您需要在安装时添加非python文件非常重要。