Firstly, I'm trying to return a lazy list to a dtml-in, but it seems 
that the __getitems__ are all called up front....  This is the class and 
the print statement shows up in debugging before any debugging output 
from within the dtml-in:

class LazyList:
    def __init__(self, root, selections):
        self._root = root
        self._selections = selections
    def __getitem__(self, index):
        s = self._selections[index]
        print s.getPath()   #####  this is executed for all items before 
anythingwithin the dtml-in
        o = self._root.restrictedTraverse(s.getPath())
        return o
    def __len__(self):
        return len(self._selections)

Does this mean that dmtl-in touches all of the objects first for some 
reason?  Or am I missing something?

Second hard ?.....  Is there any way to wrap a Folder subclassed 
instance within another class so that I can override some methods on an 
instance by instance basis?  I tried doing a .__class__ replacement, but 
for whatever reason, Zope machinery seems to keep it from taking effect. 
 Any ideas?  I've tried about 5 different approaches to no avail :(

Tim McLaughlin

Tim McLaughlin
Iteration ZERO, Inc. -

Zope-Dev maillist  -  [EMAIL PROTECTED]
**  No cross posts or HTML encoding!  **
(Related lists - )

Reply via email to