[Zope-es] Acceder a métodos de una clase en un External Method

Alexis Roda alexis.roda.villalonga en gmail.com
Mie Abr 25 15:46:25 CEST 2007


En/na David Daniel Estévez Durey ha escrit:
> Hola a todos, tengo un problema al que le he dado mil vueltas y es 
> desesperante! xD
> 
> Me he creado una clase Python tan sencilla como la siguiente:
> 
> ---
> class Clase:
>         def __init__(self):
>                 self.a = "hola"
>         def prueba(self):
>                 return self.a
> ---
> 
> Y un script Python que hace uso de ella:
> 
> ---
> from Clase import Clase
> 
> def abc():
>         a = Clase()
>         return a.prueba()
> ---
> 
> En línea de comandos, todo funciona perfectamente, llamando a la función 
> abc() se devuelve la cadena "hola", pero un External Method en Python me 
> canta siempre el mismo error diciendo que no encuentra el método "prueba".

Por lo que interpreto quieres que el ExternalMethod llame a prueba. Eso 
no es posible, un método solo tiene sentido asociado a un objeto (a 
menos que sea un classmethod o un staticmethod, que no es el caso). El 
ExternalMethod sí puede hacer referencia a la función abc.

Si esto no te resuelve el problema manda los valores que utilizas para 
definir el EM i el traceback.



Saludos


Más información sobre la lista de distribución Zope-es