Perhaps this is intended behaviour, but if you create an instance of
InternalPrincipal, and then attempt to iterate over it, it will
infinitely return None.

The following code does the trick:

from import InternalPrincipal
joe = InternalPrincipal("joe", "123", "Joe")
for key in joe:
    print key

It took me a while to track this down, and now that I know what it is,
I'm sure I can work around it, but I thought it would be worth
bringing up. Here is InternalPrincipal's __getitem__

    def __getitem__(self, attr):
        if attr in ('title', 'description'):
            return getattr(self, attr)

Alec Munro
Zope3-dev mailing list

Reply via email to