gpt4 book ai didi

python - Mongoose Schemas 和通过 python 插入

转载 作者:行者123 更新时间:2023-12-03 12:13:37 26 4
gpt4 key购买 nike

我正在为 WebApp 使用 Nodejs 服务器,而 Mongoose 充当 ORM。
当数据插入某个集合时,我有一些钩子(Hook)会触发。
我希望当 python 脚本插入 mongoDB 实例时触发这些钩子(Hook)。因此,如果我有一个预保存 Hook ,它将根据该 Hook 修改插入的 python 脚本。
这可能吗?如果是这样,我该怎么做?
如果不是,请随时向我解释为什么这是不可能的和/或为什么我很愚蠢。EDIT:几个月后我回到了这个问题,当我问这个问题时,我对自己的绿色感到畏缩。我真正需要做的就是在 NodeJS 服务器上创建一个 API 端点/标志,专门用于自动化任务,例如将数据发送到的 python 脚本,并在 NodeJS 土地结构中拥有 Mongoose 。

最佳答案

这是不可能的,因为 python 和 nodejs 是 2 个不同的运行时 - 独立的独立进程,它们无法访问彼此的内存。
Mongoose 是一个 nodejs ORM - 一个将 Javascript 对象映射到 Mongodb 文档并处理对数据库的查询的库。
所有 mongoose 钩子(Hook)都属于 javascript 空间。它们在 Mongoose 向 mongo 发送任何请求之前在 javascript 对象上执行。 2 个结果:没有其他进程可以弄乱这些钩子(Hook),甚至没有另一个 nodejs,一旦查询到达 mongodb,它就是最终的,没有更多的钩子(Hook),没有更多的修改。
有人说一张值(value)100字的图片:
enter image description here
python 和 mongo 都不知道 mongoose 钩子(Hook)。对 mongo 的所有查询都是在客户端启动的——脚本发送请求以修改数据库的状态或查询数据库的状态。
从 mongodb 端的更新触发 javascript 代码执行的唯一方法是使用 change streams
变更流不是 mongoose 钩子(Hook),但可用于钩入 mongo 端的更新。这是对数据库的更高级的使用。它对 mongo 设置、oplog 的大小、changestream 客户端的可用性、错误处理等有额外的要求。
您可以在此处了解有关变更流的更多信息 https://docs.mongodb.com/manual/changeStreams/我强烈建议寻求专业建议来构建这样的设置,以避免挫败感和意外行为。

关于python - Mongoose Schemas 和通过 python 插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61335488/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com