2010-10-06 2 views
1

Я создаю приложение в Python2.6, которое должно получать данные от CouchDb. Я использую CouchDB-0.8-py2.6 для подключения к базе данных. Я использую этот код:HttpLib2 выдает ошибку при попытке выполнить запрос на couchdb

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' 

Я пробовал Google это много раз, и никто, похоже, не ошибается. Кто-нибудь есть идея, что я делаю неправильно здесь?

+1

какая строка вашего кода вызывает эту ошибку? – SilentGhost

+0

этот: db = server ['databaseName'] –

+0

Какие версии Httplib и Python вы используете на сервере/локальной машине? – jsalonen

ответ

1

Вы используете другую версию CouchDB на сервере - CouchDB-0.7dev_r199. CouchDB больше не использует httplib2, поэтому, если вы получите примерно одинаковое решение для разработки и сервера, проблема, скорее всего, исчезнет.

+0

Спасибо за ваш ответ! Я должен буду изучить это. У нас было много проблем с установкой библиотеки python-couchdb на сервере. В конце концов мы проверили его из репо, но эта, похоже, старая версия ... –

+0

В ней работала установка новейшей версии. Большое спасибо! –

Смежные вопросы