[Zope] Storing and Using Object references

Shane Hathaway shane@digicool.com
Wed, 10 Jan 2001 15:11:13 -0500


Tom Jenkins wrote:
> 
> Hello all,
> i have a question and I hope someone can point me in the right direction
> to solve it.  I need one zope object to hold a reference to another zope
> object so the first object can call methods of the second object.  oh,
> these are python classes.
> 
> Example: object 1 is :  /container1/container1a/item1  object 2 is :
> /container2/container2a/item1  object1 needs to hold a reference to
> object2.  I'm really stuck on how to store and access object2 from
> object1.
> 
> any pointers?

I think what you're looking for is getPhysicalPath() and
unrestrictedTraverse().  Store object2.getPhysicalPath(), which returns
a tuple, in object1.  To find object2 again, call
object1.unrestrictedTraverse(stored_physical_path).

Note that this only works in Zope 2.2.x+.

Shane