Python 如何使用Pymongo在MongoDB的fs.chunks集合中添加字段?
我正在使用GirdFs将图像存储在我的本地目录中,以保存到MongoDB集合Python 如何使用Pymongo在MongoDB的fs.chunks集合中添加字段?,python,mongodb,pymongo,Python,Mongodb,Pymongo,我正在使用GirdFs将图像存储在我的本地目录中,以保存到MongoDB集合 from pymongo import MongoClient from imutils import paths import gridfs client = MongoClient("127.0.0.1", 27017) db = client.dbs fs = gridfs.GridFS(db) imagePaths = list(paths.list_images("images")) for i,
from pymongo import MongoClient
from imutils import paths
import gridfs
client = MongoClient("127.0.0.1", 27017)
db = client.dbs
fs = gridfs.GridFS(db)
imagePaths = list(paths.list_images("images"))
for i, imagePath in enumerate(imagePaths):
name = imagePath.split(os.path.sep)[-2] # to get the name of the directory
fs.put(open(imagePath, 'rb'))
上面的代码创建了两个集合fs.files
和fs.chunks
。
它在包含字段的fs.files
中创建元数据
- _身份证
- md5
- 块大小
- 长度
- 上载日期
fs.files
中
我怎样才能做到这一点
我检查了
put
方法的文档。它接受数据参数和**kwargs。我不知道这是否有助于添加新字段,因为没有可用的详细信息。中描述的任何文件级选项都可以作为关键字参数传递
例如,您可以这样设置文件名
fs.put(open(imagePath, 'rb'), filename="foo")
文件文档规范中不可用的任何其他字段都可以存储在文件文档元数据字段中元数据字段可以保存任何类型,因此这里存储的任何内容都由您自己负责
fs.put(open(imagePath, 'rb'), metadata={"subfolder": "foo-subfolder"})