متعددة كاوتش دي بي وثيقة جلب مع كاوتش دي بي-الثعبان

StackOverflow https://stackoverflow.com/questions/1640054

  •  08-07-2019
  •  | 
  •  

سؤال

وكيفية جلب وثائق متعددة من كاوتش دي بي، ولا سيما مع كاوتش دي بي-الثعبان؟

هل كانت مفيدة؟

المحلول 3

import couchdb
import simplejson as json

resource = couchdb.client.Resource(None, 'http://localhost:5984/dbname/_all_docs')
params = {"include_docs":True}
content = json.dumps({"keys":[idstring1, idstring2, ...]})
headers = {"Content-Type":"application/json"}
resource.post(headers=headers, content=content, **params)
resource.post(headers=headers, content=content, **params)[1]['rows']

نصائح أخرى

وأسهل طريقة هي لتمرير include_docs = ARG صحيح لDatabase.view. وسيكون لكل صف من نتائج تتضمن الوثيقة منها مثلا.

>>> db = couchdb.Database('http://localhost:5984/test')
>>> rows = db.view('_all_docs', keys=['docid1', 'docid2', 'missing'], include_docs=True)
>>> docs = [row.doc for row in rows]
>>> docs
[<Document 'docid1'@'...' {}>, <Document 'docid2'@'...' {}>, None]

لاحظ أن وثيقة على التوالي سيكون لا يوجد حالة عدم وجود وثيقة.

وهذا يعمل مع أي وجهة نظر - توفير مجرد قائمة من مفاتيح مناسبة لعرض

.

وهذا هو الطريق الصحيح:

import couchdb

server = couchdb.Server("http://localhost:5984")
db = server["dbname"]
results = db.view("_all_docs", keys=["key1", "key2"])
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top