Gibt es einen einfachen Weg, um die Eltern eines Datensatzes in Google App Engine datstore zu ändern
-
03-07-2019 - |
Frage
Da
class Category(db.Model): name = db.Stringproperty()
Sagen, dass ich eine verschachtelte Hierarchie
-root |-a | |-b | |-c |-x |-y |-z1 |-z2
Dabei gilt a
der Eltern root
ist, b
der Eltern ist a
, c
der Eltern ist b
etc.
Gibt es eine einfache Art und Weise, durch die ich Knoten y
von x
bewegen konnte so b
dass z1
und z2
weiterhin Kinder von y
bleiben:
-root |-a | |-b | |-c | |-y | |-z1 | |-z2 |-x
Das würde bedeuten, ich einfach y
die Eltern ändern.
Allerdings, wenn dies nicht möglich ist, als es erfordern würde,
- einen neuen Rekord
ny = Category(parent=b, name=y)
Erstellen und - rekursiv für jedes Kind von
y
einen neuen Datensatz erstellen, die als Eltern und - als Löschen
y
und seine Kinder.
ny
hat
Lösung
Die übergeordnete Beziehung wird in einem Unternehmen Schlüssel verschlüsselt, und der Schlüssel ist unveränderlich einmal erstellt, also nein, man kann nicht den Schlüssel eines bestehendes Unternehmens ändern. Um dies zu tun, müssen Sie alle relevanten Elemente mit neuen Schlüsseln wieder einsetzen.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow