将列表保存到PyMongo
我从来没有用过PyMongo,所以对这些东西还很陌生。我想把我的一个列表保存到MongoDB里。比如,我有一个列表 imageIds = ["zw8SeIUW", "f28BYZ"]
,这个列表会经常添加新内容。每次添加后,这个 imageIds
列表都应该保存到数据库里。
import pymongo
from pymongo import MongoClient
db = client.databaseForImages
然后稍后
imageIds.append(data)
db.databaseForImages.save(imageIds)
为什么这样不行呢?有什么解决办法吗?
1 个回答
5
首先,如果你不知道什么是Python字典(dict),我建议你先复习一下Python的基础知识。可以看看谷歌的Python课程或者《笨办法学Python》。否则,你可能每隔10分钟就会回来问一个新问题……
接下来,你需要连接到mongoDB服务器/实例:
client = MongoClient('hostname', port_number)
然后连接到一个数据库:
db = client.imagedb
接着把记录保存到名为“image_data”的集合里。
record = {'image_ids': imageIds}
db.image_data.save(record)
使用save()方法后,记录的字典会更新,增加一个'_id'字段,这个字段现在指向这个集合里的记录。如果你想用新的imageIds来更新它:
record['image_ids'] = imageIds # Already contains the original _id
db.image_data.save(record)