NDB を使用してエンティティをデータストアに配置した後、いくつかのコードを実行する必要があります。
私がこのようなものを持っているとしましょう。
ent=Entity()
ent.put()
def after_put():
assert ...
関数を手動で呼び出さずにそれを達成するにはどうすればよいですか? 使用できる何らかのトリガーまたはコールバックはありますか?
NDB を使用してエンティティをデータストアに配置した後、いくつかのコードを実行する必要があります。
私がこのようなものを持っているとしましょう。
ent=Entity()
ent.put()
def after_put():
assert ...
関数を手動で呼び出さずにそれを達成するにはどうすればよいですか? 使用できる何らかのトリガーまたはコールバックはありますか?
はい、「フック」を使用できます。
NDBは、軽量のフックメカニズムを提供します。フックを定義することにより、アプリケーションは、ある種の操作の前または後に、あるコードを実行できます。たとえば、モデルはすべてのget()の前に何らかの関数を実行する場合があります。適切なメソッドの同期、非同期、およびマルチバージョンを使用すると、フック関数が実行されます。たとえば、「pre-get」フックは、get()、get_async()、およびget_multi()のすべてに適用されます。
https://developers.google.com/appengine/docs/python/ndb/entities#hooks