在我的应用程序中,需要通过服务器端脚本作业(IE:每30分钟从其他API抓取/拉取一个cron作业)来更新MongoDB集合。我真正想做的是对MongoDB集合进行更新,但是要根据架构验证数据并包含元数据(更新,创建等)。
解决此问题的两种方法是:
Eve是否具有数据库挂钩,以便无需HTTP即可进行Eve丰富的数据库更新?
我能够在jenkins可以定期运行的单独脚本中运行此脚本。我正在导入的run.py中的应用程序是我在前夕快速入门结束时拥有的应用程序。
from run import app
from eve.methods.post import post_internal
payload = {
"firstname": "Ray",
"lastname": "LaMontagne",
"role": ["contributor"]
}
with app.test_request_context():
x = post_internal('people', payload)
print(x)
post_internal运行eve.utils.parse_request,它依赖于flask.request,因此with app.test_request_context()
是必需的。app.app_context()
这种方法还不够。
如果您不熟悉烧瓶,请阅读有关appcontext和reqcontext的文档(像我一样)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句