管理Django应用程序的开发和公共版本的最佳方法是什么

时间:2014-07-22 19:02:30

标签: python django

我正在使用Django,除了简单地拥有2个应用程序并为每个新的公共版本复制代码之外,我无法找到一种简单的方法来保留我的Django应用程序的开发和公开版本。

有更好的方法吗?

谢谢!

2 个答案:

答案 0 :(得分:3)

您可能需要查看" gitflow"系统。有许多变化,你不必使用git,但我们的想法是使用分支进行开发和生产。

http://nvie.com/posts/a-successful-git-branching-model/

答案 1 :(得分:1)

我使用vagrant进行GIT开发,为了进行localy测试,然后推送我对它们使用单​​独的设置。 更详细地说明我如何实现它(小组开发者):

  1. 设置virtualenvwrapper(http://virtualenvwrapper.readthedocs.org/en/latest/install.html
  2. 创建一个新项目(mkproject)
  3. 在settings.py存在的同一级别创建一个设置文件夹(确保在文件夹中也创建一个__init__.py文件。)
  4. 移动设置文件夹中的settings.py并将其重命名为dev.py
  5. 复制dev.py并在名为prod.py
  6. 的同一文件夹中创建

    创建dev.py和prod.py时,在顶部包含以下行(实际替换BASE_DIR):

    import os
    DJANGO_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    BASE_DIR = os.path.dirname(DJANGO_ROOT)
    

    这些是你的dev和prod文件,单独的数据库(例如你可以使用sqlite用于本地开发),基于你的环境的应用程序和设置(例如dev应该在我的环境中有调试工具栏),另外你可以创建项目根目录中的devurls.py文件,并指向dev.py以使用该文件(ROOT_URLCONF设置)。 当您创建文件时,在工作项目的virtualenv下的virtualenv dir文件夹中,应该有一个bin /文件夹,在该文件中输入 postactivate 文件:

    export DJANGO_SETTINGS_MODULE="projectname.settings.dev"
    

    projectname是你的项目。 这样你就可以使用git开发dev和prod设置文件(如果你愿意,还可以使用它),你可以创建分支并根据需要进行开发。大多数开发环境都不需要更多的东西。