There are many ways to do this.
If you need one way that does not require more classes in the data model, you can use the parent attribute to write versions and request the ancestor to read the latest version.
Here is an example of how this might work on a wiki page using the ndb.Model and webapp2 framework in Python GAE:
The model may be:
class WikiPage(ndb.Model): title = ndb.StringProperty(required = True) text = ndb.TextProperty(required = True) datetime = ndb.DateTimeProperty(auto_add_now = True)
The handle may be:
class Page(webapp2.RequestHandler): def get(self, path):
Magritte
source share