我运行多个(或多或少)相同的Django(1.11)部署,这些部署在完全相同的架构上运行,但是不同的设置(我创建自己的Settings
模型)。这些Settings
模型中的值很多,每个部署都有所不同,因此这些网站可能会因设置而异,例如。
出现了一项业务要求,要求我定期从一个堆栈中导出这些Settings
模型(DisplaySettings
,CurrencySettings
等),然后将它们导入另一个堆栈。我知道dumpdata
和loaddata
以JSON文件的形式提供基本功能,但我还需要业务方面的这些额外功能:
ForeignKey
和ManyToManyField
关系。以下是我迄今为止尝试过的解决方案:
dumpdata
/ loaddata
:不需要"选择要导入/导出的设置"要求。django-import-export
:仅支持导出表格结构,即外键无法作为设置记录的一部分导出。django-easydump
:将转储上传到s3的完全不相关的包。可以指定要包含的模型,但不能指定要包含的每个模型中的属性。ModelSerializer
中编写自定义嵌套djangorestframework
:可行但乏味。需要自定义前端来处理第一个要求。我的问题是:是否已经有内置的方法来执行所描述的导入/导出,或者如果没有,是否有任何合格的第三方软件包(上面没有列出),我显然已经错过了?