[Python-es] Actualizar esquema en ZODB

Antonio Beamud Montero antonio.beamud en gmail.com
Mie Jun 23 09:45:42 CEST 2010


Oswall Verny Arguedas C. escribió:
> Estoy con el tutorial de ZODB (3.10b1).
>
> Si tengo una clase persistente ya creada con objetos instanciados de ella ya guardados con anterioridad en la base de datos ZODB y necesito crear un nuevo atributo a esta clase persistente. 
>    Cómo maneja ZODB este atributo nuevo?.
>    Actualiza automáticamente los objetos creados con esta clase y les incluye este atributo?.  O requiere otro tratamiento.
> Gracias de antemano
>
>
>
>   

Te lo digo un poco de memoria, pero si defines el método (por ejemplo):

    def __setstate__(self, state):
         Persistent.__setstate__(self, state)
         if not hasattr(self, 'minuevoattr'):
             self.minuevoattr = 50

Cuando el objeto se carga de la b.d. a memoria, le aplica el método y 
crea el atributo, cuando vuelva a volcarlo de forma persistente ya lo 
hace con el atributo nuevo.

Espero que te sirva.
>       
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>   



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