pymongo实现自增长id的方法

发布时间:2020-11-05编辑:脚本学堂
本文介绍了pymongo实现自增长id数据的方法,有需要的朋友参考下。

1,官网提供的自增长id的方法
http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/
大概意思就是新建一个表,专门存最大userid。每次取一个id,就+1,这样也不会重复。
 
2,pymongo 实现
注意,第一次是返回{},然后是 1-2-3...
print db.usercounter.find_and_modify({"_id": "users"}, update={ "$inc": {'count': 1}},upsert=True) 
得到的id就可以用了,而且也不用担心多线程的问题
不过这一个用户表要维护两个表,是有点不方便。
差不多用就行了,为一个问题浪费太多时间不值得。
 
3,关于find_and_modify 方法:
http://api.mongodb.org/python/current/api/pymongo/collection.html
 

复制代码 代码示例:
find_and_modify(query={}, update=None, upsert=False, sort=None, full_response=False, **kwargs)