问题标签 [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 投票
2 回答
1346 浏览

python - 有没有办法使用 Motor 定义 MongoDB 模式?

有一种方法可以在 NodeJS 中使用 mongoose 来定义 MongoDB 集合模式。Mongoose 在运行查询时验证架构。

我一直无法在 Python/Tornado 中为 Motor 找到类似的东西。有没有办法在电机中实现类似的效果,或者有没有可以为我做到这一点的包?

0 投票
1 回答
321 浏览

python - 在龙卷风中使用数据库操作时如何在自定义装饰器中使用协程

我有使用 get 和 post 方法处理请求的处理程序,我想使用我自己的自定义装饰器进行身份验证,而不是 tornado 本身 @tornado.web.authenticated 装饰器。在我的自定义装饰器中,我需要查询数据库以识别用户,但龙卷风中的数据库查询与@gen.coroutine 是异步的。

我的代码是:

处理程序.py;

账号/utils.py:</p>

但是访问时出现错误:</p>

Traceback(最近一次调用最后一次):文件“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/tornado/web.py”,第 1443 行,在 _execute result = method(*self.path_args, **self.path_kwargs) TypeError: 'Future' object is not callable

任何人都可以在此之前遇到这个问题,编写自定义装饰器以使用异步数据库操作进行身份验证的正确方法是什么?先谢谢了~

0 投票
1 回答
1270 浏览

python - 完成()后龙卷风投掷不能写()

我有一个自定义的经过身份验证的装饰器,并在每个 get 和 post 方法上添加进行身份验证,在经过身份验证后,进行一些数据库查询和更新,但是当我使用电机产生更新()时,在完成()错误后抛出无法写入

帐户/utils.py:

wall.handlers.py:

当 post 请求到达时,装饰器对用户进行了身份验证,如果通过了身份验证,则进行更新,但出现错误:

[E 160503 17:16:00 concurrent:124] 从未检索到未来异常:回溯(最近一次调用最后一次):文件“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/tornado/gen .py”,第 1017 行,在运行中 yielded = self.gen.send(value) 文件“/Users/moonmoonbird/Documents/kuolie/kuolie/wall/handlers.py”,第 65 行,在 get self.write({' status':1,'message':'认证通过',"data":{"a":'b'}}) 文件“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/ tornado/web.py",第 685 行,写入引发 RuntimeError("Cannot write() after finish()") RuntimeError: Cannot write() after finish()

我做错了吗,有人可以帮助我吗,在此先感谢。

0 投票
0 回答
840 浏览

python - 龙卷风 asynchttpclient.fetch 使用后返回 TypeError

我将 Tornado AsynchHTTPClient().fetch(url, method="POST",body=body,headers=headers)与协程一起使用,但抛出错误:

TypeError:预期的字节、unicode 或 None;得到类型'int'

,第 1014 行,在运行中 yielded = self.gen.throw(*exc_info) File "/Users/moonmoonbird/Documents/kuolie/kuolie/neteaseim/netease_im_api.py",第 60 行,在 do_post 响应 = yield http_client.fetch(url , method='POST', headers=headers, body=urllib.urlencode(postdata)) 文件“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/tornado/gen.py”,第 1008 行,在运行值 = future.result() 文件中“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/tornado/concurrent.py”,第 232 行,结果 raise_exc_info(self._exc_info) 文件"", line 3, in raise_exc_info TypeError: Expected bytes, unicode, or None; 得到类型 int body=urllib.urlencode(postdata)) 文件“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/tornado/gen.py”,第 1008 行,运行值 = future.result() 文件“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/tornado/concurrent.py”,第 232 行,结果 raise_exc_info(self._exc_info) 文件“”,第 3 行,在 raise_exc_info 类型错误:预期字节、unicode 或无;得到类型 int body=urllib.urlencode(postdata)) 文件“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/tornado/gen.py”,第 1008 行,运行值 = future.result() 文件“/Users/moonmoonbird/Documents/kuolie/lib/python2.7/site-packages/tornado/concurrent.py”,第 232 行,结果 raise_exc_info(self._exc_info) 文件“”,第 3 行,在 raise_exc_info 类型错误:预期字节、unicode 或无;得到类型 int _exc_info) 文件“”,第 3 行,在 raise_exc_info 类型错误:预期字节、unicode 或无;得到类型 int _exc_info) 文件“”,第 3 行,在 raise_exc_info 类型错误:预期字节、unicode 或无;得到类型 int

我找不到我错的地方,有人可以帮助我,在此先感谢。

0 投票
1 回答
607 浏览

python - 使用电机检查服务器(Mongodb 和 Tornado)

我需要创建一个函数来检查以确保 Mongo 服务器正在使用 ping 函数运行。我在那里设置了客户端(配置文件有带有端口号的字典)

然后我运行这个函数:

我得到的错误:

我认为我的问题是我使用错误的 ping 功能。我找不到任何其他文档或任何其他类型的功能来检查服务器是否仍在运行。如果有人知道使用 Motor 监控状态的更好方法,我愿意。谢谢!

0 投票
1 回答
39 浏览

python - 在构造函数中动态初始化 DB

我正在使用带有龙卷风的电机。我有以下课程:

这实际上是我想要扩展的父类。子类会调用这个类的init来设置collectionName。问题是我在这个类中还有一些其他方法,例如

上面的内容被破坏了,因为我在init中动态设置了集合,这是我可以确定自我的一种方式。我设置为在基本方法中使用的变量?

0 投票
1 回答
757 浏览

unit-testing - Tornado Unittest 模拟收益语句

为龙卷风应用程序运行单元测试时,我不断收到此错误:

这是测试代码:

这是正在测试的代码:

这是为断言实际调用的方法:

当我从测试中删除 yield 语句时yield self.save(data)工作正常。我需要模拟一个Future要从中返回的对象,self.save并从中获得实际结果。

0 投票
1 回答
418 浏览

python - Mongo 聚合 $sum 行为

我在 Motor 中有这个查询(看起来几乎与 CLI 查询完全一样):

$skip需要在和之前获取文档总数$limit。不确定,究竟是如何$sum工作的,但在这个查询中,我得到了正确的结果,但是当我通过实际时_idtotal值为 1:

我想在结果中获得真实_id和正确的total价值。

Mongo的新手,感谢所有答案。

0 投票
1 回答
1209 浏览

python - MongoDB 聚合与以前的文档比较

我在电机中有这个查询:

集合中的文档stat如下所示:

我想将date_time字段与date_time上一个文档进行比较,如果它们不相等(或在 5 秒内不在 timedelta 中),请将其包含在结果中。

在 Python 中过滤这个很容易,在 Mongo 中可以吗?我怎样才能做到这一点?

0 投票
1 回答
28 浏览

tornado-motor - 在电机中加入光标

有没有办法可以连接或加入电机光标进行迭代?

例如