Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 管理Django应用程序的开发和公共版本的最佳方法是什么_Python_Django - Fatal编程技术网

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

Python 管理Django应用程序的开发和公共版本的最佳方法是什么,python,django,Python,Django,我使用的是Django,我想不出一个简单的方法来保持Django应用程序的开发和公开版本,除了简单地拥有两个应用程序并为每个新的公开版本复制代码 有更好的办法吗 谢谢 您可能需要查看“gitflow”系统。有很多变体,您不必使用git,但其思想是使用分支进行开发和生产 您可能需要查看“gitflow”系统。有很多变体,您不必使用git,但其思想是使用分支进行开发和生产 我使用vagrant进行GIT开发,以便在本地进行测试,然后进行推送,我对这两者使用单独的设置。 要更详细地了解我是如何实现它的

我使用的是Django,我想不出一个简单的方法来保持Django应用程序的开发和公开版本,除了简单地拥有两个应用程序并为每个新的公开版本复制代码

有更好的办法吗


谢谢

您可能需要查看“gitflow”系统。有很多变体,您不必使用git,但其思想是使用分支进行开发和生产


您可能需要查看“gitflow”系统。有很多变体,您不必使用git,但其思想是使用分支进行开发和生产


我使用vagrant进行GIT开发,以便在本地进行测试,然后进行推送,我对这两者使用单独的设置。 要更详细地了解我是如何实现它的(一小群开发人员):

  • 安装虚拟说唱者()
  • 创建新项目(mkproject)
  • 在与settings.py存在的级别相同的级别中创建一个settings文件夹(确保在该文件夹中也创建了一个
    \uuuu init\uuuu.py
    文件)
  • 移动settings文件夹中的settings.py并将其重命名为dev.py
  • 复制dev.py并在名为prod.py的同一文件夹中创建
  • 创建dev.py和prod.py时,在顶部包括以下行(实际上替换BASE_DIR):

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

    export DJANGO_SETTINGS_MODULE="projectname.settings.dev"
    
    其中projectname是您的项目。
    这样,您就有了一个开发和产品设置文件(如果需要,还可以添加devurls),使用git,您可以创建分支并按照自己的意愿进行开发。大多数开发环境只需要这些。我使用vagrant进行git开发,以便在本地进行测试,然后推送,我对这两个分支使用单独的设置。 要更详细地了解我是如何实现它的(一小群开发人员):

  • 安装虚拟说唱者()
  • 创建新项目(mkproject)
  • 在与settings.py存在的级别相同的级别中创建一个settings文件夹(确保在该文件夹中也创建了一个
    \uuuu init\uuuu.py
    文件)
  • 移动settings文件夹中的settings.py并将其重命名为dev.py
  • 复制dev.py并在名为prod.py的同一文件夹中创建
  • 创建dev.py和prod.py时,在顶部包括以下行(实际上替换BASE_DIR):

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

    export DJANGO_SETTINGS_MODULE="projectname.settings.dev"
    
    其中projectname是您的项目。
    这样您就有了一个dev和prod设置文件(如果需要,还可以添加devurls)使用git,您可以创建分支并根据自己的意愿进行开发。大多数开发环境都不需要更多的东西。

    开发版本和公共版本有何不同?只有设置还是其他?@FrEaKmAn-2件事:在设置中,有一种叫做“调试”的东西如果启用,则显示详细错误,如果未启用,则仅显示404/500/任何屏幕。我不希望在公共版本中启用它。开发版本也应在我添加新功能时使用。但我需要一种将代码平滑地移动到公共版本的方法。是否使用版本控制系统?如果不使用,则使用它。Git、SVN等等。谢谢稍后再告诉我。除了版本控制系统的明显优点外,您还可以拥有一个生产分支和一个开发分支,并且无论何时您想要更新生产版本,只需将开发分支合并到其中。在web上有许多关于此的主题。编写一个通用设置文件并导入其他设置文件g到环境。如果您在生产服务器上(例如检查主机名),请导入prod.py,或者导入dev.py设置文件。一个代码库,多个部署环境。是的,如果您想要登台,请使用git(这可能是您想要的)顺便说一句,你如何运行生产版本?如果开发/生产之间的唯一区别是
    DEBUG
    设置,那么在我看来,你在一些相当大和重要的主题上缺少见解。开发版本和公共版本有何不同?只有设置还是其他什么?@FrEaKmAn-2件事对我来说:在设置中,有一些东西ng称为“调试”如果启用,则显示详细错误,如果未启用,则仅显示404/500/任何屏幕。我不希望在公共版本中启用它。开发版本也应在我添加新功能时使用。但我需要一种将代码平滑地移动到公共版本的方法。是否使用版本控制系统?如果不使用,则使用它。Git、SVN等等。谢谢稍后再告诉我。除了版本控制系统的明显优点外,您还可以拥有一个生产分支和一个开发分支,并且无论何时您想要更新生产版本,只需将开发分支合并到其中。在web上有许多关于此的主题。编写一个通用设置文件并导入其他设置文件如果您在生产服务器上(例如检查主机名),请导入prod.py或el