Re: PYTHON: Searching for an object inside a folder
I would like to bring back the old issue because we did some tests and figured that the often-used idiom: if hasattr(myFolder.aq_explicit,object_id): #myFolder contains object_id #myFolder.aq_explicit prevents aquiring from above... does not always work as expected. It may return different result if, for example, the script is called as: otherFolder/myFolder/myFolder/script Please correct me if I am wrong but it would be better to say: if hasattr(myFolder.aq_inner.aq_explicit,object_id): #.... Regards, Igor --- In zope@y..., Maik Jablonski <maik.jablonski@u...> wrote: Vitor Varalonga wrote:
Hi!
I need to check, inside a Python script, if an object with a particular ID exists inside a folder. Right now I'm using the following code:
# this is the folder I want to search myFolder = container.REQUEST.PARENTS[0].img_folder
# search the folder for an object with ID <object_id> obj = getattr(myFolder, object_id, None) if obj is not None: # there is no such object else: # there is an object with that id
Is there a more efficient way to perform this operation?
hi, untested..;-), but should work: if hasattr(myFolder.aq_explicit,object_id): # there is an object with object_id else: there is no object with object_id myFolder.aq_explicit prevents aquiring from above...;-) cheers, maik -- Maik Jablonski __o www.zfl.uni-bielefeld.de _ \<_ Deutsche Zope User Group Bielefeld, Germany (_)/(_) www.dzug.org
participants (1)
-
ielbert