[Zope] storing python objects
Chris Withers
chris at simplistix.co.uk
Fri Oct 26 08:17:24 EDT 2007
Jonathan wrote:
>
> ----- Original Message ----- From: "David Bear" <David.Bear at asu.edu>
>> I need to run an external method to use some python functions that are
>> restricted within zope. I'm thinking an easy way to get the data back
>> would be to just store basic python objects within zodb; tupples,
>> lists, dictionaries.
Why not just have the external method return the results and call the
external method from a python script?
>> but I've never seen this documented anywhere. Is it possible to store
>> basic python objects directly in zodb? AND then use a zpt to read the
>> data?
Yes.
in your external method:
self.somefolder.mydata = {'whatever':'somevalue'}
> I have done something similar: have an external method store a a
> list/dictionary value in a property field on a folder, then a future
> call to the external method retrieves that property field and uses
> 'eval' to convert it back to a list/dictionary (it is stored as a
> string).
Why on *earth* would you do that?!
Why not just store the actual value rather than fiddling around with
strings and eval?
> The other approach I have used is to create a dead simple Zope product
> that just defines an object class (which contains lists, dictionaries,
> etc) and then have the external method store these objects directly in
> the ZODB.
You can either store in the root of the zodb, hang off an existing
object, or just use SimpleItem.
cheers,
Chris
--
Simplistix - Content Management, Zope & Python Consulting
- http://www.simplistix.co.uk
More information about the Zope
mailing list