Ho creato un'applicazione appengine (python) che ha bisogno di convertire le entità del datastore esistenti in valore intero (100) in valore float (100.00) per il problema di conversione valuta. Com'è il modo giusto di fare questo? Dato che la mia query restituisce un errore quando cambio il tipo di proprietà nel mio modello.Modifica proprietà integer per FloatProprietà di AppEngine DataStore esistente
Vecchio modello:
class Learn(search.SearchableModel):
pid = db.ReferenceProperty(Product, collection_name='picks')
title = db.StringProperty()
description = db.TextProperty()
order = db.IntegerProperty()
cost = db.IntegerProperty(default=0)
cost1 = db.IntegerProperty(default=0)
Nuovo Modello:
class Learn(search.SearchableModel):
pid = db.ReferenceProperty(Product, collection_name='picks')
title = db.StringProperty()
description = db.TextProperty()
order = db.IntegerProperty()
cost = db.FloatProperty(default=0.000)
cost1 = db.FloatProperty(default=0.000)
ho bisogno di un modo corretto per modificare questo tipo di proprietà datastore senza cambiare (cancellare la vecchia e aggiungere nuovo) i dati esistenti . Dal momento che è la chiave utilizzata in molti altri tavolo/modello.
Grazie.
Grazie ancora Nick, considerando il numero intero + cent per la tabella delle valute. –
@Ivan Non intendevo due numeri interi, anche se ciò avrebbe funzionato, intendevo solo memorizzare il numero totale di centesimi in un singolo campo. Ad esempio, $ 10,23 viene memorizzato come 1023. –