我正在使用pymongo版本2.6.3,我在gridfs中保存mongo中的文件,突然gridfs给出了错误。 AttributeError:'GridFS'对象没有'find'属性 我的代码是:
import gridfs
admin_db = MDB_CONN['admin']
admin_db.authenticate(mongo_admin, mongo_password)
db = MDB_CONN["dbname"]
grid = gridfs.GridFS(db,collection="collectionName")
grid_cursor = grid.find({'file_hash':self.object_id},timeout=False, limit=1)
提前感谢您的帮助。
答案 0 :(得分:1)
您收到此错误,因为驱动程序版本2.6.3中有no find()
method;它是added in version 2.7:
PyMongo 2.7是一个主要版本,具有大量新功能和 bug修复。亮点包括:
- 完全支持MongoDB 2.6。
- 新的批量写入操作API。
- 支持 使用max_time_ms()进行服务器端查询超时。
- 支持 将aggregate()输出写入集合。
- 一个新的parallel_scan() 帮手。
- OperationFailure及其子类现在包含一个细节 具有来自服务器的完整错误详细信息的属性。
- 新的GridFS find()方法返回GridOutCursor。
- 大大改善了支持 对于使用PyMongo的C扩展时的mod_wsgi。阅读Jesse的博客文章 详情。
- 改进了对ARM little endian的C扩展支持。
您应该将驱动程序升级到最新支持的版本。