我已经坚持诊断这个几个小时了,我想看看是否有任何 pymongo 专家有任何想法:
下面一行代码:
connection = pymongo.Connection('localhost', 27017)
生成以下错误:
/usr/local/Cellar/python/2.7.3/bin/python2.7/Users/danwilson/Dropbox/Projects/mysite/app.py
回溯(最近调用最后):
文件“/Users/danwilson/Dropbox/Projects/mysite/app.py”,第 149 行,在
主要()
文件“/Users/danwilson/Dropbox/Projects/mysite/app.py”,第 144 行,在 main
http_server = tornado.httpserver.HTTPServer(Application())
文件“/Users/danwilson/Dropbox/Projects/mysite/app.py”,第 54 行,在 init
self.connection = pymongo.Connection('localhost', 27017)
文件“/usr/local/Cellar/python/2.7.3/lib/python2.7/site-packages/pymongo/connection.py”,第 290 行,在 init
self.__find_node()
文件“/usr/local/Cellar/python/2.7.3/lib/python2.7/site-packages/pymongo/connection.py”,第 586 行,在 __find_node
提高 AutoReconnect(', '.join(errors))
pymongo.errors.AutoReconnect: 'module' 对象没有属性 'decode_all'
mongod 的流输出确认连接:
My-MacBook-Pro:~ username$ mongod
mongod --help 获取帮助和启动选项
5 月 15 日星期二 07:53:50 [initandlisten] MongoDB 开始:pid=2277 port=27017 dbpath=/data/db/64-bit host=My-MacBook-Pro.local
5 月 15 日星期二 07:53:50 [initandlisten] db 版本 v2.0.5,pdfile 版本 4.5
5 月 15 日星期二 07:53:50 [initandlisten] git 版本:1bb4de4630302fad8af53824ca4f627db490b753
5 月 15 日星期二 07:53:50 [initandlisten] 构建信息:Darwin erh2.10gen.cc 9.8.0 Darwin 内核
版本 9.8.0:2009 年 7 月 15 日星期三 16:55:01 PDT; root:xnu-1228.15.4~1/RELEASE_I386 i386 BOOST_LIB_VERSION=1_40
5 月 15 日星期二 07:53:50 [initandlisten] 选项:{}
5 月 15 日星期二 07:53:50 [initandlisten] journal dir=/data/db/journal
5 月 15 日星期二 07:53:50 [initandlisten] 恢复:不存在日志文件,不需要恢复
5 月 15 日星期二 07:53:50 [websvr] 管理 Web 控制台等待端口 28017 上的连接
5 月 15 日星期二 07:53:50 [initandlisten] 等待端口 27017 上的连接
5 月 15 日星期二 07:53:57 [initandlisten] 接受了来自 127.0.0.1:50263 #1 的连接
5 月 15 日星期二 07:53:57 [conn1] 结束连接 127.0.0.1:50263
包版本
My-MacBook-Pro:~ username$ pip freeze
PyYAML==3.10
bson==0.3.3
分发==0.6.26
mimeparse==0.1.3
pymongo==2.2
python-dateutil==2.1
pytz==2012c
六==1.1.0
Tornado ==2.2.1
virtualenv==1.7.1.2
wsgiref==0.1.2
MongoDB 版本
My-MacBook-Pro:~ username$ brew info mongodb
mongodb 2.0.5-x86_64
http://www.mongodb.org/
/usr/local/Cellar/mongodb/2.0.5-x86_64(17 个文件,121M)*
https://github.com/mxcl/homebrew/commits/master/Library/Formula/mongodb.rb
最佳答案
这个问题的解决方案对 pip 来说不是好消息:我不得不卸载 pymongo 和 bson,然后重新安装 bson,然后重新安装 pymongo。所以看起来安装顺序实际上很重要!
关于python - 无法使用 pymongo 2.2 连接到 MongoDB 2.0.5 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10603754/