0

在过去的一周里,我一直在努力使用 buildout 来获得纯粹的隔离。我想要做的是安装 Django 和我的项目需要的其他鸡蛋,与任何系统安装的隔离

我知道在此处此处之前已经提出过这个问题,但是这些问题的答案对我不起作用。

我的问题:如何配置 zc.buildout 为基于 Django 的项目提供纯包隔离?

笔记:

  • 尽管在很多地方都提到过,但这绝对不是 zc.buildout 的默认设置(从 zc.buildout 1.6.x 版本开始)
  • 没有buildout允许您执行此操作的选项。
  • 有一些z3c.recipe.scripts选项允许您为 python 解释器执行此操作,但djangorecipe不使用z3c.recipe.scripts,因此./bin/django shell可以访问所有系统包。
4

1 回答 1

2

使用 virtualenv 实现隔离:

pip install virtualenv
virtualenv django_buildout
cd django_buildout
bin/pip install zc.buildout
bin/buildout init

zc.buildout让你有目的地重复使用现有的鸡蛋,其目的是满足扩建设定的要求。您真的应该将所有版本都固定下来,而不是让 buildout 为您挑选它们:

[buildout]
versions = versions
allow-picked-versions = false

[versions]
zc.buildout = 1.6.3
# etc.
于 2013-01-04T08:51:03.433 回答