为什么key = model_instance.key没有!!!在 db 到 ndb 文档的旁边?

Why does key = model_instance.key have No!!! next to it in the db to ndb docs?

以前我使用的是 db 而不是 ndb。现在我正在迁移我的代码。 db.model 相当于

key = model_instance.key()

ndb.model:

key= model_instance.key

其中没有 !!!在它的旁边。但它并没有说明我们应该使用什么来代替。

我将如何在 ndb 中编写?为什么这不好?

p.key().id()

我假设您指的是 NDB Cheat Sheet,更具体地说是 Entities table:

中的第 4 行
key = model_instance.key()  |   key = model_instance.key  # no () !!

文字实际上是# no () !!,意思是没有parenthesis/not一个函数调用。这在上下文中是正确的,因为这是获取实体密钥的方法,实体密钥是 ndb 中的属性,而不是 db 中的函数调用。这并不意味着 "do not use".