[pyar] Setter para model properties [era: Re: South se confunde cuando le cambio el nombre a una property?]
Federico Heinz
fheinz en vialibre.org.ar
Jue Sep 9 02:37:38 ART 2010
On 09/09/2010, Federico Heinz wrote:
> Todo anda perfecto...
Creo que ese "todo" fue exagerado. No *todo* anda perfecto. Lo que
anda bien:
* si f es un Foo, y b es un Bar, f.bar = b hace justo lo que
quiero: actualiza el campo, y ejecuta el comportamiento adicional
* cuando leo Foos de la base de datos, el comportamiento adicional
no se ejecuta. Esto es perfecto, porque ese comportamiento sólo
debe ocurrir cuando asigno un nuevo valor a f.bar
Lo que *no* anda bien:
* cuando un Form sobre una instancia de Foo intenta cambiar el
valor del foreign key, en realidad asigna a f._bar, no a f.bar,
con lo que *no* se ejecuta el comportamiento adicional. Todo mal.
Hmmm... parece que esto merece un poco más de seso. Veo que hay un
ticket sobre esta misma idea[1] de hace cuatro años, por lo visto
asignado y aceptado, con parche y todo (aunque también con "patch
needs improvement", pero que no parece haber sido integrado al
sistema. Al menos, el documento de referencia de Model no menciona
nada parecido.
Sin embargo, lo que estoy tratando de hacer me parece tan elemental,
que me imagino que debe haber algún mecanismo generalmente aceptado
de hacerlo. ¿Cuál es?
Fede
[1] <http://code.djangoproject.com/ticket/3148>
More information about the pyar
mailing list