我有一个 Django 网站,有 3 个环境(本地、暂存、生产)。
生产包含一些我不希望我的开发人员访问的数据(用户的个人数据和财务数据)。
出于合规性原因,不可以选择执行数据库备份恢复。
不过,我们在该网站上也有一些内容页面,我们使用 Wagtail CMS 进行管理。
我正在寻找一种在需要时将生产数据(仅某些模型,但特别是 wagtail 页面)同步回暂存和开发人员本地环境的方法。
理想情况下,我会有一个可以在另一个环境中运行来复制数据的管理命令:
示例:./manage.py sync_from_prod BlogPost这将在本地或临时环境中找到所有丢失的博客文章,并在数据库中创建它们。我找不到任何库可以为 Wagtail 或 Django 执行此操作。
这似乎是一个常见问题,我很惊讶地发现没有 Stackoverflow 问题或开源库解决这个问题。
如果什么都不存在,我可能会尝试编写自己的 django-model-sync (找到了这个项目,但已有 3 年历史并且兼容直到 django 1.7,我使用 python3 django 1.11)
为了管理安全性,开发人员可以使用机密来访问公开数据(通过 ssl)的生产 API