2017-08-08 2 views
0

Ich habe einen folgenden Anwendungsfall:Hinzufügen von Eigenschaften zu Google Datastore-Objekt dynamisch

Ich habe eine Methode, die eine Liste von Zeichenfolgen akzeptiert. Für jede der Saiten, ich brauche eine Eigenschaft unter einer bestehenden Google-Datenspeichern Einheit A

Beispiel zu erstellen: Ich habe eine bestehende Einheit Personfname und lname mit Eigenschaften. Wenn die Eingabeliste Zeichenfolgen hat - address, city, muss ich die Entität Person aktualisieren, um diese neuen Eigenschaften address und city zu enthalten.

Ich kodiere diesen Anwendungsfall in Python. Irgendwelche Vorschläge, wie ich das erreichen kann?

Antwort

2

So ist der beste Weg, dies zu tun, ist Ihre Klasse ndb.Expando erben zu lassen. Der Unterschied zwischen Expando und Model besteht darin, dass Sie einer Entität Expando immer Attribute hinzufügen und sie im Datastore speichern können.

In diesem Wissen gibt es mehrere Möglichkeiten, um fortzufahren, aber ich schätze, dass Sie auch Pythons setattr(object, name, value) Methode verwenden müssen, um den Attributnamen aus einer Zeichenfolge zu übergeben.

+0

Vielen Dank für die Info. – user2998453

+0

Gern geschehen. – Y2H

Verwandte Themen