1

似乎 db.Key 和 ndb.Key 实例不一样。

我有一个 db.Key 实例。如何将其转换为 ndb.Key?

这就是我想要做的:

NDBEntity(ndb.Model):
  some_property = ndb.StringProperty()

DBEntity(db.Model):
  some_property = ndb.StringProperty()

# I have an instance of a DBEntity already saved in the datastore
db_entity_instance = DBEntity.all().get()

ndb_entity_instance = NDBEntity(id="some_id", parent=db_entity_instance.key(), some_property="foo").put()
# The above line doesn't work because it expects a Key Instance for the parent, and it doesn't seem to recognize a db.Key instance.

有任何想法吗?

4

2 回答 2

4

要将 DB 密钥转换为 NBD 密钥,您必须:

ndb.Key.from_old_key(your_old_DB_key) 

请查看NDB Cheet Sheet以进行进一步的转换。

于 2013-12-31T10:33:58.707 回答
3

您需要从“旧”的 db.Key 转换为新的 ndb.Key。查看NDB Key Class了解更多信息。

于 2012-12-06T10:21:43.263 回答