问题标签 [tornado-motor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1143 浏览

python - KeyError:连接到 Mongodb 副本集(电机、pymongo、龙卷风)时“从空集中弹出”

我正在以下列方式连接到运行 mongoDB 的 3 节点副本集:

当 PRIMARY 出现故障时,我的副本集运行良好,另一个接管。但是当我这样做时,我的 Tornado 服务器KeyError: 'pop from an empty set'在重新连接时会抛出错误。Tornado/Motor 似乎无法重新连接到新的 PRIMARY 节点,我不知道为什么。即使我添加/替换主机:端口到连接字符串,我仍然没有得到任何结果。这有关系read_preference吗?

0 投票
3 回答
3626 浏览

python - 如何连接到 mongoDB

mongoLabs用来托管我的数据库,我想从我的应用程序连接到它。

我也在使用中的Motor模块pyMongo。我不确定在哪里实例化连接。

例如,我知道如果数据库与应用程序位于同一本地计算机上,我会这样做:

mongoLab 网站说要uri在驱动程序中包含以下内容:

但我看不到如何创建与该数据库的连接。

谢谢

0 投票
4 回答
38080 浏览

mongodb - 如何从聚合中隐藏_id?

我有这个查询:

这给了我这个结果:

所以我可以这样做:

但我怎么能隐藏"_id",所以我只能得到:

在普通查询中,我会简单地添加类似的东西,{"_id":0}但在这里它不起作用。

0 投票
1 回答
592 浏览

python - 将发电机管道连接在一起

motor我可以通过Mongo 适配器访问从数据库中生成属性哈希的生成器:

我正在尝试创建一个类方法,如果给定一个生成器,它可以实例化自身的实例,但不完全确定如何去做。我有:

用例:

但这只是引发了“产生的未知对象”错误。

0 投票
1 回答
1776 浏览

python - 如何在其他函数中移动数据库请求(使用产量)?

我正在使用异步驱动电机玩龙卷风和 mongodb。使用回调时一切都很好。然后我发现了使用 motor.Op 或 tornado.gen.Task 仅在一个函数中执行请求的可能性:

所以这是有效的:

但我想将这个数据库请求移动到另一个模块中它自己的函数中。问题是我真的不明白产量在这里是如何工作的(尽管我读了很多关于产量的问题)。所以这是我尝试过的,但它不起作用:

并在另一个函数中调用:

如果我用 pdb 进行调查:

任何帮助表示赞赏,谢谢。

0 投票
2 回答
320 浏览

mongodb - 电机返回 无

我正在使用电机驱动程序连接到 Mongo DB。下面是向集合中插入数据的代码

插入语句总是返回 None。这不是 Tornado 应用程序。马达只能与 Tornado 一起使用吗?如果不是,为什么插入没有返回?

0 投票
0 回答
1614 浏览

python - TypeError:“MotorCollection”对象在电机 python 中不可调用

我正在尝试将 on_open 函数上的 websocket 对象发送给客户端,它会连同对象一起返回 id,但它说错误:TypeError: 'MotorCollection' object is not callable in json.encode(self) please help

0 投票
2 回答
836 浏览

mongodb - 使用电机插入数据时如何捕获异常?

我试过这样的代码。数据库是mongodb。我第一次运行它时,它会正确插入数据。我第二次运行它,它应该有一个异常并打印“错误”。但它崩溃了,而不是打印“错误”。

0 投票
1 回答
460 浏览

python - Motor error: callback is required

Using sample code from motor tutorial.

Getting traceback:

The documentation says this should return a Future if no callback is passed, but it throws an exception instead. Using gen.Task does the work, but I don't understand why a straightforward example from the tutorial does not work.

0 投票
1 回答
562 浏览

python - 使用 tornadoweb 和电机驱动程序更新 mongodb

我正在尝试在 mongodb 上执行更新,使用 motor 和 tornadoweb 以及以下代码:

我在日志中得到的是:

我得到了一些中间对象(u'updatedExisting ?),稍后没有。

我似乎,就像我应该做一些'提交'左右。有任何想法吗?

问候!