【问题标题】:Data management through environments with django-cms使用 django-cms 通过环境进行数据管理
【发布时间】:2013-10-06 19:59:30
【问题描述】:

我有一个运行 django-cms 的 Django 站点和三个环境:本地开发(当前是一个提交给 repo 的 sqlite 数据库)、staging (mysql) 和 prod (mysql)。项目中还有其他 django 应用程序在数据库中拥有自己的表,并且架构更改通过南迁移管理。

我们使用“git flow”流程进行开发,这意味着功能在分支中开发,并在完成后合并到“开发”分支中。从部署的角度来看,开发分支映射到网站的暂存版本。

我想要一种在这些环境中管理数据的方法,该方法不涉及为 django-cms 手动制作数据迁移,或将 staging/prod 数据库更改为 loaddata

对此有什么好的工作策略?是否有一种准自动化的方式来生成 South 数据迁移?或者让 django-cms 将页面发布到不同环境的方法?

【问题讨论】:

    标签: django django-south data-migration django-cms release-management


    【解决方案1】:

    我在多个项目上运行完全相同的设置,但几乎从不考虑在开发、阶段或生产之间迁移数据。

    开发环境因测试数据而变得混乱,阶段环境因无法投入生产的开发代码和数据而变得混乱。这意味着希望生产保持干净整洁。

    应该小心地处理它们之间的移动数据,如果错误的数据进入生产数据库,我几乎不会考虑自动执行此操作。

    如果您将重要信息放入暂存环境以向客户端演示或在部署到生产之前对其执行“最终”测试,那么我建议您在该特定应用程序上使用 south 执行数据迁移并使用数据迁移。

    对于任何其他类型的数据迁移,例如 CMS 页面设置等,我建议您根据需要在 CMS 草稿模式下进行设置,然后发布。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-22
      • 2011-03-18
      • 2017-11-12
      • 2013-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多