我是Django的初学者,并且在使用PIP安装Django-Basic-Apps时遇到了麻烦。

如果我这样做...

$ cat requirements.txt 
git+git://github.com/nathanborror/django-basic-apps.git

$ pip install -r requirements.txt

我最终得到了 lib/python2.6/site-packages/basic/blog 那没有模板目录。

如果我这样做...

git clone http://github.com/nathanborror/django-basic-apps.git

我最终得到了一份 basic/blog 确实有一个模板目录。

我怀疑一些关于 django-basic-apps 或PIP使其无法通过PIP安装。我想也许读 django-basic-apps' setup.py 会引导我找到答案,但我看不到。

(我应该补充一点,如果我不使用PIP安装,我可以得到 django-basic-apps 工作正常。)

有帮助吗?

解决方案

当您使用“ PIP”安装某些内容时 setup.py 用于确定要安装哪些软件包。这个项目的 setup.py, ,如果我正确阅读它,说“只需在其中安装这些Python软件包 basic 目录” - setup.py 绝对没有提及安装中包含的任何非Python文件。

这可能是开发人员的故意,因为这是Django套件不包含模板的传统 - 众所周知,即使是内置的东西, django.contrib.auth 没有任何模板,可以使您每次从头开始建立其小表格! (或者,从网络上其他地方剪切和粘贴。)

但是,如果您自己希望使用此Python发行版安装模板,无论作者如何设置内容,都只需列出模板 setup.py呢首先,将类似的东西添加到 setup.py 文件:

template_patterns = [
    'templates/*.html',
    'templates/*/*.html',
    'templates/*/*/*.html',
    ]

然后,将最后一个变量添加到 setup() 打电话使其结束时:

...
packages=packages,
package_data=dict( (package_name, template_patterns)
                   for package_name in packages ))

这宣称 setup() 每个软件包应伴随的函数,并通过搜索每个软件包下面的HTML文件找到的数据文件 templates 目录。

尝试一下,让我知道这是否也可以在您的机器上工作!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top