动态模型定义和变更(演进模式)
django-mutant的Python项目详细描述
动态模型定义和变更(演化模式)。
概述
Django提供了一个很好的orm,并且有了migrations的能力,可以轻松地执行模式转换。
然而,有些项目可能需要runtime模式更改,这就是django-mutant提供的功能。
主要概念的灵感来自这些项目:
- 威尔·哈代的dynamic-models和talk。
- 通过django-dynamo。
安装
pip install django-mutant
确保'django.contrib.contenttypes'和'mutant'在 您的INSTALLED_APPS
INSTALLED_APPS += ('django.contrib.contenttypes', 'mutant')
迁移到django突变体0.2和django 1.7+
如果您与django<;1.7一起使用mutant,并且愿意向前迁移 为了确保数据库 模式与django的迁移状态同步。
- 伪造初始的mutant迁移。
- 对于您安装的每个mutant.contrib应用程序,请确保假冒 它们的初始迁移和后续迁移。例如, 如果安装了mutant.contrib.boolean应用程序,则需要 运行manage.py migrate boolean --fake 0001 && manage.py migrate boolean
资源
- DjangoCon Europe 2013 talk关于juergen schackmann给出的突变和其他动态模型选择。
- A getting started guide由@integricho提供突变指导。
保持联系并作出贡献
>;从现在起,我认为最好的贡献和联系方式是使用github消息系统(问题和请求)。