JSONProperty: http://appengine-cookbook.appspot.com/recipe/add-a-jsonproperty-to-your-model-to-save-a-dict-to-the-datastore/
Curious about performance implications. Is anybody actually doing this? On Dec 24, 1:28 am, boson <[email protected]> wrote: > That's interesting. I haven't looked into custom properties yet, but > it sounds like just what I was after. By the same approach, I assume > one could easily make a JSONProperty as well... > > I'm not very familiar with pickling. Are there the advantage or > disadvantage to pickle vs. JSON? Obviously JSON would be easier to > debug and inspect with the Data Viewer. Does Pickle survive code > changes of the classes it represents? I see the class name and other > data is present in the pickled form. Also, are there major speed > differences (I heard that cPickle is not present in GAE -- does this > make for an extra slow pickle?). > > Pickle overload:http://docs.python.org/library/pickle.html > > On Dec 23, 11:14 pm, Alexander Kojevnikov <[email protected]> > wrote: > > >http://is.gd/dgBK > > > On Dec 24, 5:38 pm, boson <[email protected]> wrote: > > > > Is there a good way (any way) to hook a db.Model subclass so that it > > > does some magic right before being written to the Datastore, and some > > > reverse magic right when it's read back? > > > > E.g. Say you want to have a big JSON object stored in a TextProperty. > > > Obviously you could JSON and de-JSON it yourself every time you load > > > or save it. But ideally you could hook this code into the class > > > itself, so as soon as it's read from the store the JSON string is gone > > > and a Python object is in its place. Similarly, you could manipulate > > > the Python object and write it back to the store, where it would be > > > quickly re-JSONed prior to hitting BigTable. > > > > Or maybe there's another better way to work with and serialize > > > arbitrary Python data (lists, dicts, etc.) without writing the code > > > for it in multiple places... Pickle? --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~----------~----~----~----~------~----~------~--~---
