El día 21 de enero de 2013 16:00, Alvaro Manrique <sanreikaj.fo...@gmail.com> escribió: > Gracias Chema y Oswaldo > > Emmm tomando lo ultimo que dices Oswaldo ya estoy en el desastre jejeje, mi > problema es tal cual lo planteas. > > Planteo el problema de esta manera: > > Necesito que la clase Hija herede de la clase base para que tenga sus > métodos y atributos, hasta aquí todo bien. > > Luego los atributos de la clase hija también deben ser objetos ya que ellos > deben manejar sus propios atributos y métodos, aquí es donde nace la idea de > que sean instancias de otra clase aparte y de hecho hasta aquí todo funciona > de maravilla el problema es cuando necesito crear otra instancia de la misma > clase hija. > > Si pudiese lograr que cuando se destruya la instancia de la clase hija > también lo hagan sus atributos seria la solución, pero como dices Chema > quizá es problema de concepto.
Lo que me despista es la comparación con un ORM. Que los atributos se comporten como objetos es lo normal, en python todo son objetos. El problema parece ser que no quieres que sean atributos compartidos por todas las instancias (atributos de clase). Entonces tendrás que declararlos dentro de algún método de inicialización o de creación de la instancia. Si por lo que veo, cada instancia dices que quieres que tenga su conexión, y no quieres que se comparta entre instancias, entonces tienes dos opciones: 1) crea la conexión al inicializar la instancia (método __init__) 2) crea la conexión fuera de la definición de la clase y se la añades como atributo a la instancia Tal vez pueda serte útil echar un vistazo a la teoría de "Patrones de Diseño", en concreto los patrones estructurales como Facade: http://es.wikipedia.org/wiki/Patrón_de_diseño http://www.etnassoft.com/biblioteca/design-patterns-in-python/ -- Hyperreals *R: http://ch3m4.org/blog Quarks, bits y otras criaturas infinitesimales _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/