如何使用pymongo更新mongo db中的telegram timer对象并检索相同的对象

时间:2018-01-04 07:13:21

标签: python mongodb pymongo

这是我以前用pymongo

更新mongo db中的计时器对象的方法
collection.update_one (
        {'chat_id':update.message.from_user['id']},
        {
            "$set": {
                "telegram_timer_object": Binary(dill.dumps( j.run_once 
          ( Time_out_function, QUESTION_TIMEOUT, context=chat_id )  ))
            },

        }
    )

虽然检索对象已更改且不相同

jobqueue_object = dill.loads(collection.find_one ( {'chat_id': 
update.message.from_user['id']} )['telegram_timer_object'])

jobqueue_object.schedule_removal()  

如何解决它...... ???

1 个答案:

答案 0 :(得分:1)

您可以使用new选项而不是update_one使用findAndModify来返回UpdateResult的实例,以便同时更新同一对象。

也许这可以帮到你。

Pymongo doc related