django-mutant
Dynamic model definition and alteration (evolving schemas).
Overview
Django provides a great ORM and with the power of migrations one can easily perform schema alteration.
However, some projects may require runtime schema alteration and that’s what django-mutant provides.
The main concept was inspired by those projects:
Will Hardy dynamic-models’s documentation and talk.
And by django-dynamo.
Installation
pip install django-mutant
Make sure 'django.contrib.contenttypes' and 'mutant' are in your INSTALLED_APPS
INSTALLED_APPS += ('django.contrib.contenttypes', 'mutant')
Migrating to django-mutant 0.2 and Django 1.7+
If you used mutant with Django < 1.7 and are willing to migrate forward you’ll have to run the following steps in order to make sure you database schema is synchronized with Django’s migration state.
Fake the initial mutant migration.
For every mutant.contrib application you installed make sure to fake their initial migration and run their following migration. For example, if you had the mutant.contrib.boolean application installed you want to run manage.py migrate boolean --fake 0001 && manage.py migrate boolean
Resources
DjangoCon Europe 2013 talk about mutant and other dynamic model alternatives given by Juergen Schackmann.
A getting started guide with mutant guide by @integricho.
Get in touch and contribute
>From now on I think the best way to contribute and get in touch is using github messaging system (issues and pull requests).
Metadata
Release files for django-mutant 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django-mutant-0.2.1.tar.gz | 35.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django_mutant-0.2.1-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 101.1 kB
Release files / django-mutant-0.2.1.tar.gz
| Download URL | django-mutant-0.2.1.tar.gz |
|---|---|
| Size | 35.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c49baac0a80bfd12de90c750fb087e8a4b38cc59661f2abd27fc711009c7d026
|
|
BLAKE2b-256 checksum How to use checksums |
0c68b99247876388cf364b6980216792bdd448c52e001c0a814ca67788d85da8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / django_mutant-0.2.1-py2.py3-none-any.whl
| Download URL | django_mutant-0.2.1-py2.py3-none-any.whl |
|---|---|
| Size | 65.8 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
cc2c9df893f0811e9116e47d5b524846c0caa3dbc03acf770a106ce2d413e847
|
|
BLAKE2b-256 checksum How to use checksums |
f815b958803376429f2833369945636873c708de8ef517f0b7d68f614bdbdd28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |