[pyar] [django] Cambiando un atributo de un modelo para usar property ... ¿y con el admin qué hago?
Facundo Batista
facundobatista en gmail.com
Jue Ene 31 19:01:35 -03 2019
Hola!
Resulta que tengo un modelo en django que tiene el campo "foo".
Pero resulta que quiero cambiarle el comportamiento por default,
entonces renombro `foo` a `_foo`, y luego agrego un property onda...
def _get_foo(self):
return self._foo[3:]
def _set_foo(self, value):
self._foo = ">>>" + value
Entonces, si alguien hace `Coso.foo = "bleh"`, realmente el campo en
la base de datos tiene ">>>bleh".
Hasta ahora, todo bien.
El tema es, ¿qué hago con el admin?
Yo quiero que cuando entre a una instancia de este modelo, por ejemplo
la de recién, aunque en la DB tenga ">>>bleh", el admin me muestre
"bleh". Y que si va el humano y pone "wat", termine ejecutándose el
property para que la DB tenga ">>>wat".
¿Se puede? ¿Cómo?
Gracias!!
--
. Facundo
Blog: http://www.taniquetil.com.ar/plog/
PyAr: http://www.python.org.ar/
Twitter: @facundobatista
Más información sobre la lista de distribución pyar