【发布时间】:2014-02-14 04:47:42
【问题描述】:
我有一张包含以下元数据的图片:
> db.fs.files.find().pretty()
{
"_id" : ObjectId("4576874577342672346"),
"chunkSize" : 262144,
"user_name" : "my name",
"filename" : "image.jpg",
"length" : 7103,
"uploadDate" : ISODate("2014-01-23T13:31:48.155Z"),
"user_email" : "email@email.com",
"md5" : "1234567890"
}
>
我想从 Python (PyMongo) 中删除图像。
delete() 上的文档似乎规定delete() 函数中唯一接受的参数是file_id:
http://api.mongodb.org/python/current/api/gridfs/#gridfs.GridFS.delete
以编程方式,我可以在文件元数据中匹配以下可用值:
- 用户名
- 文件名
- user_email
我该怎么做:
- 获取
file_id(必要时通过使用上述值)或 - 根据
file_id以外的元数据字段删除文件?
另外,我目前只测试单个块文件,如果将来与更大的文件交互会被file_id 删除或其他元数据也会删除所有关联的块?
【问题讨论】:
标签: python mongodb pymongo gridfs