【发布时间】:2015-07-09 06:56:39
【问题描述】:
我正在尝试打包我的 Django 项目,但没有成功。我的项目如下所示:
dsbg/
manage.py
dsbg/
__init__.py
urls.py
wsgi.py
app1/
__init__.py
models.py
views.py
urls.py
app2/
__init__.py
models.py
views.py
urls.py
settings/
base.py
local.py
prod.py
static/
app1/
images/
background.gif
style.css
templates/
home.html
app1/
detail.html
index.html
app2/
detail.html
index.html
我遵循了here 的程序,但我不确定我做的是否正确(他们的示例只有一个应用程序:民意调查)。我做了以下事情:
- 在新目录 django-dsbg 中移动应用程序 + 静态 + 模板目录(将 dsbg 和设置保留在根目录中)
- 在 django-dsbg 中,创建 setup.py 文件,指定包文件(app1 和 app2)并创建 MANIFEST.in 以包含静态和模板目录。
-
在 django-dsbg 中,运行:
python setup.py sdist -
在django-dsbg的父目录下,运行:
pip install --user django-dsbg/dist/django-dsbg-0.1.tar.gz
之后,项目如下所示:
dsbg/
manage.py
settings/
base.py
local.py
prod.py
dsbg/
__init__.py
urls.py
wsgi.py
django-dsbg/
LICENSE
MANIFEST.in
README.rst
app1/
models.py
views.py
urls.py
app2/
models.py
views.py
urls.py
templates/
home.html
app1/
...
app2/
...
static/
...
现在在根目录(顶部 dsbg),我尝试启动服务器:
python manage.py runserver --settings=settings.local
服务器启动良好,但是当指向本地主机时,浏览器显示:
TemplateDoesNotExist at / home.html.
...
Python Path: ['/home/patrick/django/dsbg/dsbg',
...
'/home/patrick/.local/lib/python2.7/site-packages']
这个 home.html 文件位于 django-dsbg/templates。 dsbg/dsbg 和 .local/lib/python2.7/site-packages 目录都不包含 home.html。后者包含我所有的应用程序,但不包含静态或模板目录。
我做错了什么?有人能帮我吗? 任何帮助是极大的赞赏。 帕特里克
【问题讨论】:
-
你有想过这个吗?