我正在Python2.6中构建一个需要从CouchDb获取数据的应用程序。我正在使用CouchDB-0.8-py2.6连接到数据库。 我正在使用此代码:
import couchdb
server = couchdb.Server(url='http://localhost:5984/', full_commit=True, session=None)
db = server['databaseName']
doc = db['docId']
value = doc['value']
print(value)
在我的本地计算机(OSX)上,代码运行完美,但是当我尝试在Debian服务器上运行它时,我收到以下错误:
File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.7dev_r199-py2.6.egg/couchdb/client.py", line 165, in __getitem__
db.resource.head() # actually make a request to the database
File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.7dev_r199-py2.6.egg/couchdb/client.py", line 977, in head
return self._request('HEAD', path, headers=headers, **params)
File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.7dev_r199-py2.6.egg/couchdb/client.py", line 1010, in _request
resp, data = _make_request()
File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.7dev_r199-py2.6.egg/couchdb/client.py", line 1005, in _make_request
body=body, headers=headers)
File "/usr/local/lib/python2.6/dist-packages/httplib2-0.6.0-py2.6.egg/httplib2/__init__.py", line 1025, in request
cached_value = self.cache.get(cachekey)
AttributeError: 'bool' object has no attribute 'get'
我已经多次试图谷歌,没有人似乎有同样的错误。有谁知道我在这里做错了什么?
答案 0 :(得分:1)
您在服务器上使用了不同版本的CouchDB - CouchDB-0.7dev_r199。 CouchDB不再使用httplib2了,所以如果你的开发和服务器环境大致相同,问题就很可能会消失。