[Zope-dev] method attribute __roles__ in Zope 2.8

Dieter Maurer dieter at handshake.de
Sun Feb 20 13:42:24 EST 2005


Andreas Jung wrote at 2005-2-20 12:33 +0100:
>I can across the following problem while trying to fix the broken FTP 
>service for Zope 2.8:
>
>ObjectManager.manage_FTPstat() tries to access 
>self.manage_FTPlist.__roles__ whose
>value is ('Manager',') in Zope 2.7. In 2.8 this attribute is not available. 

In Zope 2.7 and before, ExtensionClass methods were magic objects.

  When you used "method.attr", then the method actually
  used "getattr(method.im_self, method.im_func.func_name+'attr')"
  to retrieve "attr" (i.e. "attr" where retrieved from the bound
  object).

For the new style ExtensionClass implementation
(used from Zope 2.8 on), Jim removed this magic.

You can use the "getattr" above to resolve the attribute.

-- 
Dieter


More information about the Zope-Dev mailing list