Mit einer App in Python arbeiten, die über die Google App-Engine bereitgestellt wird.Update erstellt eine neue Entität, anstatt die aktuelle im Google Datastore zu aktualisieren
Hier ist der Code, den ich verwendet habe, um das Update zu tun.
key = ndb.Key('User', uid)
user = key.get()
if not user:
logging.info("Creating new user...")
user = M.User(id=uid)
user.remind = tmp
user.put()
Anstatt die alte Entität zu aktualisieren, wird eine neue Entität mit dem Schlüssel als a im Namensfeld erstellt. Wie unten gesehen Namen/ID classNo erstellt first_name groupid last_name Benutzernamen aktualisiert ReMIND
id = 133.877.436 2016.08.13 0 (15: 16: 04.890) HKT JIACHENNN null wahre 2016.8.13 (15: 19: 49,055) HKT
name = 133877436 -1 2016.08.13 (15: 19: 52,590) HKT null null null wahr 2016.08.13 (15: 19: 52,590) HKT null
jede Hilfe dankbar!
UPDATE/GELÖST
gelöst durch die Verwendung von Int (uid), wenn die Einheit das Abrufen. Es wurde eine mew-Entity erstellt, da die zwei Schlüssel unterschiedlich waren. Eins war 133877436 und wurde in Anführungszeichen eingeschlossen "133877436" daher wurde Name genannt.
Hope this jemand anderes
hilft
Sie zeigen nicht, wie dieser Code aufgerufen wird, aber 'id = ist 133866436' ein langer,' name = 133866436' ein String ist, so sind die Tasten unterschiedlich. Wenn die Schlüssel unterschiedlich sind, sind die Entitäten unterschiedlich. – tx802
@jiachen: Sie sollten eine Antwort auf Ihre Frage mit der Lösung hinzufügen - um die Frage nicht als unbeantwortet zu lassen. –