python - ndb.toplevel 用于 python 方法与请求处理程序

标签 python google-app-engine google-cloud-datastore app-engine-ndb

Google App Engine 文档指出“为了方便起见,您可以使用 @ndb.toplevel 来装饰请求处理程序。”

@ndb.toplevel可以与非请求的python方法一起使用吗 处理程序?

我有一个调用ndb.put_multi_async()的python方法mymethod(),并且mymethod()在单元测试中被调用。我想在继续之前调用 mymethod() 来完成 put_multi_async() 。为了达到这种效果,我可以用 @ndb.toplevel 装饰 mymethod() 吗?这样做似乎可以确保 put_multi_async() 在 mymethod() 返回之前完成,但我想仔细检查是否没有任何意外的副作用。

最佳答案

是的,整个 tasklet 模块 source ,来自 toplevel ,必须进行研究以确认(据我所知,除了模块自己的文档字符串之外,它没有在其他地方记录),但这样做后我看不到任何副作用出现使用 toplevel 来修饰不是处理程序的方法。

关于python - ndb.toplevel 用于 python 方法与请求处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32236779/

相关文章:

python - 何时在 pandas 中使用多索引与 xarray

python - Pandas:从 PyODBC 读取数据并解析不同列中的日期时间

google-app-engine - 我可以在谷歌应用引擎上使用 node.js npm 和 socket.io

node.js - 通过父键查询实体

google-app-engine - 在基于 Android-Studio 的项目中为 AppEngine 创建综合索引

python - 仅使用 Python Flask 的 SSL

python - spaCy - 将扩展函数添加到管道导致堆栈溢出

google-app-engine - Google App Engine 标准环境与 next/image 兼容吗?

python - 错误 : (gcloud. preview.app.deploy) 错误响应 : [400] Invalid character in filename: flask/ext/setuptools/script (dev). tmpl

java - 如何在 AppEngine 数据存储上执行批量更新