动态地向Google Datastore实体添加属性

时间:2017-08-08 14:15:16

标签: python-2.7 google-app-engine google-cloud-datastore

我有一个以下用例:

我有一个接受字符串列表的方法。对于每个字符串,我需要在现有的Google数据存储实体A

下创建一个属性

示例:我有一个包含属性Personfname的现有实体lname。 如果输入列表包含字符串 - addresscity,我需要更新实体Person以包含这些新属性addresscity

我正在用Python编写这个用例。有关如何实现这一目标的任何建议?

2 个答案:

答案 0 :(得分:3)

所以最好的办法是让你的班级继承ndb.ExpandoExpandoModel之间的区别在于您始终可以向Expando实体添加属性,并且可以将其存储在数据存储区中。

知道这一点,有几种方法可以继续,但我猜你也需要使用Python的setattr(object, name, value)方法从字符串中传递属性名称。

答案 1 :(得分:2)