This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

Dynamo let users and admins create and mantain their Django DYNA mic MO dels dynamically at runtime. For details on setup and usage, please read the documentation on Readthedocs.

Why would you need a dynamic model?

Dynamic models are beneficial for applications that need data structures, which are only known at runtime, but not when the application is coded. Or when existing models need to be extended at runtime by additional fields. Typical use cases are:

  1. CMS: In content management systems, users often need to maintain content that is unique for their specific website. The required data structures to store and maintain this content is therefore not known to the developers beforehand.
  2. Web Shop: The owner of a web shop has highly customized products, with very special product attributes. The shop developers want the web shop owner to define these attributes herself.
  3. Survey: If you have an application to create and maintain online surveys, you do neither know the questions nor the possible answers at runtime, but let your users define these, as they implement their surveys.

Dynamo supports the three of these use cases - and many more!

How does Dynamo work?

Dynamo lets you define the meta data for your models their fields. This metadata definition is stored in “real” Django models. The defined model is then created at runtime. And of course, you can also modify the models later on, e.g. adding, renaming or deleting fields; or changing model attributes. It will also automatically manage your admin and app cache for the dynamic models. The meta data maintenance can be done via the Django Admin or via the provided API.

What else is there?

There are various approaches and implemenations available for Django developers:

  • The most straight forward approach is to use the Django internals and its DB API to create and maintain models at runtime. Numerous authors have elaborated this option in the Django Wiki . Michael Hall has created an app following this approach; he has also called in dynamo, I hope this does not cause too much confusion.
  • Entity-Attribute-Value / EAV Model is the traditioal computer science approach to tackle this kind of problem, and there are also django implementations for that available like django-eav or eav-django.
  • Finally, Will Hardy has introduced a South -based concept, that he has presented and discussed at the DjangoCon Europe 2011 . Following this concept, he has implemented dynamic-models

The South based approach seems to be the cleanest and clearly follows the DRY approach: all database handling, maintenance and transactions are left to the excellent South API.

Who else gets credits for Dynamo?

Dynamo is inspired by the excellent work of Will Hardy’s dynamic-models and this Django Wiki Article. It also re-uses parts of their concepts and coding. Furthermore, South is used to maintain the Dyanmo related database objects.

Under which license is Dynamo available?

Dynamo is available under the BSD license.

How do I get suport?

The online documentation on ReadtheDocs is a great place to start. If you have any further questions, issues or would like to contribute, please let us know at the Dynamo Google Group

Release History

Release History


This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
django_dynamo-0.25-py2.7.egg (46.2 kB) Copy SHA256 Checksum SHA256 2.7 Egg Aug 5, 2011
django-dynamo-0.25.win32.exe (225.5 kB) Copy SHA256 Checksum SHA256 2.7 Windows Installer Aug 5, 2011 (28.1 kB) Copy SHA256 Checksum SHA256 Source Aug 4, 2011

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting