簡體   English   中英

Asyncmongo不返回_id

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM