django - 为 Django 创建开发环境

标签 django apache development-environment

我们正在使用 Django 启动一个 Web 项目(并且对此很陌生),我想知道设置高效开发环境的最佳方法是什么。

这是一些信息:

  • 我们是 2 位开发人员,负责项目
  • 我们有一个开发/生产服务器托管在 Webfactional 上(使用 apache 服务器)
  • 数据库 (MySQL) 托管在此服务器上
  • 我们都使用 Eclipse 和 Pydev
  • 项目托管在 Github 存储库

  • 到目前为止,我们还没有设置任何本地开发服务器,我们通过 Github 将修改同步到服务器。但是真的不是很方便...

    我们正在考虑在本地设置 apache 服务器,它使用远程数据库,并且只偶尔同步一次。

    你认为会更好吗?

    您有其他想法/其他提示吗?

    谢谢!

    最佳答案

    在开发过程中不要尝试共享服务器和数据库。你只会感到困惑。

    每个开发者都应该在自己的机器上有一个 MySQL 的本地副本,并按照 mipadi 的建议运行开发服务器。通过 South 管理数据库模式更改,并将数据保存在夹具中或使用 South 的数据迁移。每个开发人员都应该提交到他们本地版本的 git 存储库,但只有在特定任务完成并工作时才将更改推送到 Github(或者,更好的是,使用远程分支以便同步更改,但只有在完成时才合并回 master )。

    一个好主意是拥有一个像 Hudson/Jenkins 这样的持续集成服务器,在每次提交给 master 之后,运行测试,并且 - 如果它们通过 - 构建站点的最新版本,您可以将其用于功能/用户测试。

    编辑以添加 开发服务器和任何特定数据库后端之间没有关系。正如我上面推荐的那样,在本地机器上安装 MySQL 或 PostgreSQL 并使用开发服务器非常简单。在最初遇到一些您在 sqlite3 和生产 MySQL 数据库之间切换时所担心的问题之后,我已经以这种方式工作了好几年。

    关于django - 为 Django 创建开发环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5492710/

    相关文章:

    Apache - 无效命令 'Auth' 错误 500

    python - django 中的命名约定是强制性的吗?

    django - 在 django-query 中实现逻辑解析器

    python - 测试中的模型 - Django 1.7 问题

    java - 如何在 Linux 终端中为 Java 使用 apache commons io?

    apache - 模态 Apache htaccess?

    linux - 系统 session 低于用户 session

    c#应用程序不会在除开发它的盒子之外的任何机器上运行

    development-environment - 在设置新的 Web 开发环境之前需要了解什么?

    django - 尝试重定向到另一个 View 时获取 NoReverseMatch