[Grok-dev] Pickling an object stored in the Zodb. How do I skip the __parent__ attribute?

Kevin Smith kevin at mcweekly.com
Thu Aug 14 14:03:51 EDT 2008


Hi Sebastion,

Please let me know if you make headway with this, I've tried a number of 
things to make this work, without success.

Thanks,

Kevin Smith

Sebastian Ware wrote:
> Thanks for the pointer! I have read:
>
>    http://www.python.org/dev/peps/pep-0307/
>
> And found that the pickling is done by calling the method you refered  
> to:
>
>    __getstate__()
>
> and that it really does exist on the objects in the Zodb. I will  
> override the method by means of an adapter for the root object that I  
> am pickling and remove the attribute [__parent__]. Feels as though  
> this might actually work :)
>
> Mvh Sebastian
>
> 14 aug 2008 kl. 15.11 skrev Jegenye 2001 Bt (Miklós Prisznyák):
>
>   
>> 2008/8/14 Sebastian Ware <sebastian at urbantalk.se>
>> I am trying to export and import objects from the Zodb using
>> cPickle.dumps().
>>
>> My problem is that the pickler traverses the __parent__ attribute thus
>> returning a much larger object graph than I wish to serialize.
>>
>> Do I have to subclass the pickler or is there som other smart way of
>> making it skip the __parent__ attribute?
>>
>>
>> You could  write an adapter  (or modify the class of the content  
>> objects itself) to use __setstate__ and __getstate__ , etc:
>>
>> http://www.python.org/doc/2.5/lib/node321.html
>>
>> -- 
>> Best regards,
>>    Miklós
>>
>> _______________________________________________
>> Grok-dev mailing list
>> Grok-dev at zope.org
>> http://mail.zope.org/mailman/listinfo/grok-dev
>>     
>
> _______________________________________________
> Grok-dev mailing list
> Grok-dev at zope.org
> http://mail.zope.org/mailman/listinfo/grok-dev
>
>
>   
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.zope.org/pipermail/grok-dev/attachments/20080814/6781ad22/attachment.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kevin.vcf
Type: text/x-vcard
Size: 285 bytes
Desc: not available
Url : http://mail.zope.org/pipermail/grok-dev/attachments/20080814/6781ad22/attachment.vcf 


More information about the Grok-dev mailing list