对于django,Buildout vs virtualenv + pip?

时间:2011-07-28 21:25:58

标签: python django virtualenv pip buildout

优点和缺点?

我个人正在为我的django项目使用buildout,但考虑到简单地转换为virtualenv + pip。

1 个答案:

答案 0 :(得分:11)

核心,buildout和pip + virtualenv也是如此。他们都使用python包,安装它们,将它们与你的python环境的其余部分隔离开来,处理依赖关系(通过setup.py)等等。

Buildout做得更多。当然,这意味着比pip更多的配置。你必须弄清楚额外的配置是否值得您从中获得回报。

你可以通过一些附加组件(“食谱”)从buildout中获得一些额外内容:

  • 为您设置django的'djangorecipe'插件。例如,不需要指向settings.py文件的环境变量。方便。

  • 自动设置cronjob。

  • 从模板生成配置文件(如您网站的apache)。使用buildout配置中的变量,这样可以防止重复。

基本上,您可以使用buildout完成一些显式配置。更少的手动步骤。

另一方面,您可以使用其他工具来实现您可能需要的额外自动化级别。所以virtualenv + pip + something_else也是可能的。