[英]Asyncmongo not return _id
使用PyMongo:
import pymongo
conn=pymongo.Connection(host='127.0.0.1',port=27017)
db=conn.cms
db.comments.save({'content':'test', 'user':'admin'})
然后返回:
ObjectId('4ea175b96e955237aa000000')
PyMongo沒關系。 但是當我使用AsyncMongo時,我無法獲得_id作為響應。
class PoCommentsHandler(BaseClass):
@tornado.web.asynchronous
def post(self):
self.mongo.comments.save({'content':'test', 'user':'admin'}, callback=self._callback)
def _callback(self, response, error):
if error: raise tornado.web.HTTPError(500)
logging.info(response)
self.finish(str(response))
然后返回:
[I 111021 21:25:02 cms:104] [{u'connectionId': 41, u'ok': 1.0, u'err': None, u'n': 0}]
誰能告訴我什么地方錯了? 謝謝
沒錯,MongoDB本身不會返回剛剛插入的文檔的ID,而pymongo會為您完成。 pymongo API的異步實現(也可以在Tornado IOLoop上實現)稱為APyMongo ,它的行為應與您預期的一樣。
可以在以下Google 網上論壇線程中找到有關此主題的更多信息: http : //groups.google.com/group/python-tornado/browse_thread/thread/9f43f85916156848
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.