I found out that RCS for models is an interesting problem to solve in the context of data persistence. They are several solution using the django ORM to achieve this django-reversion and AuditTrail each of which propose their own way to do it.
Here is the model (in django-model-like format) which I would like to have revisions :
class Page(Model):
title = CharField()
content = TextField()
tags = ManyToMany(Tag)
authors = ManyToMany(Author)
- Each revision should be annotated with a date, a revision number, a comment and the user that did the modification.
How would you do it in you preferred db (Mongo, neo4j, CouchDb, GAE Datastore) ?
Please post only one example of RCS models per post.
I'm not asking for a complete code (maybe an explanation is enough?) but enough to see how this problem can be tackled in each db type.