1

Google ドキュメントから:

「モデル インスタンスのキーには、インスタンスのエンティティの種類と一意の識別子が含まれます。識別子は、インスタンスの作成時にアプリケーションによって明示的に割り当てられるキー名の文字列か、App Engine によって自動的に割り当てられる整数の数値 ID のいずれかです。インスタンスがデータストアに書き込まれます (プットされます)。」

例では:

name = "John"
idd = 11
person = Person(name, idd)
person.put()

「App Engine によって自動的に割り当てられる整数の数値 ID」を取得するにはどうすればよいですか?

4

2 に答える 2

2

ndb put() を使用している場合、新しいキーが返されます... キーで id 関数を呼び出します。

name = "John"
idd = 11
person = Person(name, idd)
new_key = person.put()
auto_assigned_id = new_key.id()

https://developers.google.com/appengine/docs/python/ndb/entitiesから:

オブジェクトを永続エンティティとしてデータストアに格納するには、put() メソッドを使用します。これにより、後でデータストアからエンティティを取得するためのキーが返されます。

sandy_key = sandy.put()

と:

https://developers.google.com/appengine/docs/python/ndb/keyclass#Key_id

于 2013-01-16T20:10:05.157 に答える
1

試しましたか

print person.id()

または、一意の識別子を提供した場合

print person.id_or_name()

また、put()メソッドはキーを返します

key = person.put()
于 2013-01-16T20:10:45.540 に答える