https://github.com/geonode/geonode-django-dynamic-models
Fork of django-dynamic-model waiting for a new official release (0.4.0)
https://github.com/geonode/geonode-django-dynamic-models
Last synced: 3 days ago
JSON representation
Fork of django-dynamic-model waiting for a new official release (0.4.0)
- Host: GitHub
- URL: https://github.com/geonode/geonode-django-dynamic-models
- Owner: GeoNode
- License: mit
- Created: 2023-05-16T14:56:47.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-07-05T23:26:39.000Z (over 2 years ago)
- Last Synced: 2025-09-23T05:34:17.849Z (5 months ago)
- Language: Python
- Homepage:
- Size: 63.5 KB
- Stars: 0
- Watchers: 9
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# django-dynamic-models [](https://travis-ci.com/rvinzent/django-dynamic-models) 
## Overview
Dynamic Django models allow users to define, edit, and populate their own database tables and apply runtime schema changes to the database. `django-dynamic-models` is loosely based on the [runtime dynamic models](https://dynamic-models.readthedocs.io/en/latest/) talk from DjangoCon 2011. The basic concept involves around dynamic class declaration using the built-in `type` function. `type` is used to dynamically declare new Django models at runtime, and it is the goal of this project to provide a simple API to allow developers to get started with dynamic models quickly.
This package provides models to help Django developers quickly implement dynamic models for their specific use case, while the handling the runtime schema changes and updates to Django's model registry under the hood. The schema changes are applied in pure Django, *without* the migrations framework, so none of your dynamic models will affect your migrations files at all.
> **Disclaimer**:
>
> It is not recommended to use this project for business critical data due to the high potential for data loss. Tables can be dropped very easily, and without backups, even a small user error could be catastrophic.
## Documentation
See the [wiki](https://github.com/rvinzent/django-dynamic-models/wiki/Introduction) for documentation.