Migración de datos al cambiar el tipo de propiedad de un campo NDB

Supongamos que inicialmente creo un modelo ndb. Quería cambiar el tipo de propiedad ndb de un campo (por ejemplo, IntegerProperty a StringProperty), pero quería convertir los datos actuales almacenados en ese campo para no perder esos datos. Un método sería simplemente crear un nuevo nombre de campo y luego migrar los datos con un script, pero ¿hay otras formas más convenientes de lograr esto?

Por ejemplo, supongamos que tengo el siguiente modelo:

class Car(ndb.Model):
    name = ndb.StringProperty()
    production_year = ndb.IntegerProperty()

Y almacené una instancia de la entidad:

c = new Car()
c.name = "Porsche"
c.production_year = 2013 

Y quería cambiar production_year a ndb.StringProperty () sin "perder" el valor que establecí (todavía existiría, pero no sería recuperable). Si acabo de cambiar production_year a una instancia de ndb.StringProperty (), el valor del campo no informa un valor que tenga sentido ya que el tipo no coincide.

Así que si cambié el modelo a:

class Car(ndb.Model):
    name = ndb.StringProperty()
    production_year = ndb.StringProperty()

Intentar recuperar el campo con notación de puntos resultaría en un valor de Ninguno. Si alguien se encuentra en esta situación, ¿podría explicar lo que hizo para resolverlo? Gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta