Deutsche Zope User Group
Gast 3 Benutzer online
DZUG-News

Wie komme ich �ber eine relative Pfadangabe an ein Objekt in der ZODB?

Frage:

Antwort:

Der ObjectManager von Zope stellt hierzu die Methode restrictedTraverse() zur Verf�gung.

Innerhalb eines PythonScripts wird dies wie folgt ben�tzt:

   obj = container.restrictedTraverse('/path/to/object')

Hinter einem Virtual Host Monster muss man gegebenenfalls noch das Wurzelverzeichnis ermitteln und im Pfad erg�nzen. Im CMF steht dazu portal_url.getPortalPath() zur Verf�gung.

Falls man keinen kompletten Pfad eines Objektes hat, sondern nur dessen ID hat (jedoch eine Referenz auf das Folderobjekt, in dem sich das Objekt befindet), so kann man folgendes benutzen:

   obj = folder[id]

   oder 

   obj = getattr(folder, id)


Rubriken: Verschiedenes    FAQ angelegt von: ajung, Letzte �nderung: 30.11.2003 14:10 Uhr