0

在旧数据存储中,我可以通过以下方式打印实体的密钥

旧数据存储

q = MyDB.all()
q.filter("property", proertyValue)

getKey = q.get()
printKey = getKey.key # 这将返回类似 agxkZXZ-c3l 的字符串...<br>

新开发银行

q = MyNDB.query()
q = q.filter(MyNDB.property == propertyValue)

getKey = q.get()
printKey = getKey.key # 它返回 id 像 5066549580791808 但实际上我想要一个键值

如何在 NDB 上打印键值

预先感谢。

4

1 回答 1

2

这取决于您希望如何打印密钥。ndb 中的键表示有几个选项。

1) 获取字符串的 websafe base64 编码序列化,如下所示:

printKey = getKey.key.urlsafe()

链接到文档

2)或者,如果您想使用 DB 来表示密钥,您实际上可以使用以下方法从 NDB 密钥中获取 DB 密钥to_old_key()

printKey = getKey.key.to_old_key()

链接到文档

于 2013-10-04T17:28:00.340 回答