[removed zodb-dev, don't cross post!]

If you are using plain catalogs then you need to store the path to the object 
somewhere (as metadata or as Zope does as the uid of the catalog record). 
Then traverse to it based on this path. In Zope you use (restrictedTraverse 
(or unrestrictedTraverse) to do this). You might need to roll your own 
traverser, but it shouldn't be too hard.

hth,

Casey

On Wednesday 29 May 2002 04:30 pm, Nicholas Henke wrote:
> On Wednesday 29 May 2002 04:20 pm, Casey Duncan wrote:
> > try:
> >
> >   ob = r.getObject()
> >   ob.function()
> 
> ob gets returned as None -- I think this is due to 
> AbstractCatalogBrain::getObject(). I don't believe self.aq_parent is set 
> correctly -- how is it supposed to be set ?
> 
> >
> > or if that doesn't work:
> >
> >   ob = catalog.getobject(r.data_record_id_)
> AttributeError -- getobject doesnt exist?
> 
> >   ob.function()
> >
> > Bear in mind that getObject traverses to the object which is expensive 
both
> > in time and memory if the number of results is large.
> 
> OK -- is there a better way to do all of this ?  What I am trying to do is 
> have ZODB store objects and Catalog maintain indexes on them. Now I can come 
> back and do a 'SELECT' on the objects, say for variable != 1, and somehow 
get 
> access to the original objects if I wish to. Is there somewhere that 
> documents using Catalog and PluginIndexes without all of the other Zope 
> stuff? Any documents on using it with the Zope stuff ?
> 
> Nic


_______________________________________________
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists -
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope )

Reply via email to