Frage

Ich habe eine Tableview mit Daten, dass ich auf die App Engine-Datenbank erstellen. Immer, wenn ich einen Eintrag in der Tabelle löschen, ich will auch das Element in der App Engine-Datenbank delelte. Wie kann ich wissen, welcher Eintrag löschen?

Ich dachte an diese:

für jedes Element i in dem GAE Speicher speichern, mache ich einen Verweis auf ein Modell mit der iphone einzigartigen Geräte-ID. für jeden Artikel i in dem GAE Speicher speichern, füge ich ein UUID für iphone db & app Motor db.

So meine Frage so etwas wie diese ex wäre:

del item where unique device id = ####
and item UUID = ####

Ich mag nicht auf App Engine anzumelden, das ist, warum ich die eindeutigen Geräte-ID verwenden.

Meine einzige Sorge Leistung, GAE hat Geräte-ID und die UUID nachzuschlagen, ich weiß nicht, ob dies ein Problem sein wil?

Beste Lösung wäre, wenn es nur durch seine db.Key löschen kann (), aber ich weiß nicht, wie das zu tun, weil, wenn ich die Daten zu GAE poste ich weiß nicht, was es Schlüssel erzeugt wird.

Kann jemand mir einen Rat geben?

War es hilfreich?

Lösung

Der Ansatz, den Sie vorschlagen, ist vernünftig. Wenn Sie die UUID als Schlüsselnamen angeben, können Sie es direkt löschen. Um ein Objekt mit einem Schlüsselnamen erstellen Sie:

MyEntity(key_name=a_string, ...)

eine Einheit von Schlüsselnamen löschen (ohne es zuerst zu holen), tun:

db.delete(db.Key.from_path("MyEntity", a_string))

Es gibt keine Notwendigkeit, sowohl eine UUID und ein Geräte-ID zu haben -. Die UUID ausreichend ist Einzigartigkeit für alle Geräte, um sicherzustellen,

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top