provides a declarative way of denormalizing models in Django based applications while maintaining data consistency.
Python
Switch branches/tags
Nothing to show
Pull request Compare This branch is 1 commit ahead, 171 commits behind django-denorm:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
denorm
docs
testproject
.gitignore
LICENSE
README
setup.py

README

This is the "trigger" branch of django-denorm, which uses
triggers instead of signals to track updates of your models.
The model API is identical to the signal based implementation,
but there are a few important differences in usage:

- it's NOT database independent but MySQL, PostgreSQL and sqlite are supported
- you need to initialize it before you can use it: using syncdb, and after every change to
  denormalized fields and their dependencies ./manage.py denormalize init
- updates are lazy: denormalized fields won't get updated until you call
  denorm.fields.flush()

the flush() call can be made in 3 different ways:
1) directly, after you manipulated some data
2) by running ./manage.py denorm_flush (by hand, or as cronjob)
3) by running ./manage.py denorm_daemon <interval>

option #3 will call flush() every <interval> seconds.

Documentation:
http://django-denorm.initcrash.net/

and issue tracker:
http://github.com/initcrash/django-denorm/issues