CouchDBドキュメントにはキーが添付されているようです。あなたが得るすべてであるようにしかし、どうやらそのキーは、常に文書IDと同じである明示的にCouchDBドキュメントキーを設定する
wget "http://localhost:5984/monitor20n/_all_docs?startkey=1111&endkey=2222
:単一のドキュメントを取得するときには表示されませんが、次のような文書の範囲を取得するためにそれらを使用することができますこのようなもの
{"total_rows":14269,"offset":0,"rows":[
{"id":"128127896626798592","key":"128127896626798592","value":{"rev":"1-4e07e2c4b4eddfad5846ddf905337197"}},
{"id":"128128575021907970","key":"128128575021907970","value":{"rev":"1-43d983af1e837a4415b6167cae3b5de8"}},
... and so on }}
(ここではkey == idを参照)。しかし、より複雑な相互作用を可能にするベクトルを含む、より複雑なキーをビューで使用することができます。少なくとも、ビューのキーを設定して、文書IDを検索せずに検索するものを事前に設定できるようにします。 質問は次のとおりです。文書を作成するときにこれらのキーを設定できますか?それとも、それを作成した後ですか? 明白な回避策は、この
function (doc) {
emit(doc.key,doc)
}
のようなビューを作成することですが、私は同じ効果を得るためのより直接的な方法がありますかどうかを知りたいと思います。
だから私は別の回避策を使用する実際のキーの周りにヒューリスティックなルールを使用してIDを生成すると思います。たとえば、日付の範囲で検索する場合は日付を照合します。 – jjmerelo
あなたは何をしようとしているのかについてより具体的な質問をしたいと思うかもしれません。ここでは良い例です:http://stackoverflow.com/questions/3079040/range-keys-in-couchdb-views –