Python 更改|为Google App Engine数据存储上的模型实例分配父对象
是否可以更改或为数据存储中已有的模型实例分配新的父对象?例如,我需要这样的东西Python 更改|为Google App Engine数据存储上的模型实例分配父对象,python,google-app-engine,transactions,google-cloud-datastore,Python,Google App Engine,Transactions,Google Cloud Datastore,是否可以更改或为数据存储中已有的模型实例分配新的父对象?例如,我需要这样的东西 task = db.get(db.Key(task_key)) project = db.get(db.Key(project_key)) task.parent = project task.put() 但它不是这样工作的,因为task.parent是内置的方法。我正在考虑为任务创建一个新的键实例,但也没有办法更改键 有什么想法吗?根据,没有: 实体的父级已定义 当实体被创建时,并且不能 以后再换 实体的完整密
task = db.get(db.Key(task_key))
project = db.get(db.Key(project_key))
task.parent = project
task.put()
但它不是这样工作的,因为task.parent
是内置的方法。我正在考虑为任务创建一个新的键实例,但也没有办法更改键
有什么想法吗?根据,没有:
实体的父级已定义
当实体被创建时,并且不能
以后再换
实体的完整密钥,
包括路径、种类和类型
名称或数字标识,唯一且
特定于该实体。完整的
创建实体时,将指定键
在数据存储中创建,并且
它的部分可以改变
当需要在同一事务中操作父实体和子实体时,设置父实体非常有用。否则,您只能通过强制它们都位于同一实体组中来限制性能,并限制您在创建实体后更新关系的能力
使用ReferenceProperty代替。顺便说一句,这里是微博示例中家长的另一个很好的用法。