2016-05-22 5 views
1

CloudJデータベースにNodeJSモジュールを照会しています。特定のフィールド検索とdb.list()関数を使用しています。しかし、私は(おそらく正しく)すべての設計書類も返されています。クラウド・クエリーが_design文書を返すのを避ける

特定のクエリを実行して_idをチェックせずにリストを使用する場合、またはデータベースからの応答の各項目をテストすることなく、設計ドキュメントが返されるのを防ぐ方法がありますか?

私はドキュメントでそれを行う方法を見つけることができません。おそらく_designドキュメントが他のドキュメントのように照会され、更新されるという言葉だけが含まれています。

おかげ

+0

あなたはリストを強化するためにあなたのマップ機能を共有してもよろしいですか? – ukmadlz

+0

私はCloudant NodeJSモジュールを使用しています。この関数は組み込みであり、ここにあります https://github.com/dscape/nano#dblistparams-callback – Jake

答えて

1

db.list()機能は、エンドポイント、例えばCloudantの_all_docsにアクセスしています

https://reader.cloudant.com/animaldb/_all_docs

これはキーの順序で(設計文書を含む)データベースのすべての文書を返します。

すべての設計ドキュメントのIDは、私たちがそのキー」で始まるもので始まる、私のすべての文書を見つける

https://reader.cloudant.com/animaldb/_all_docs?startkey=%22a%22

すなわちを言うことによってのみ、 『本当の』文書にアクセスすることができ、 『_』文字で開始するとa "。

は、Node.jsのでは、これは次のようになります。また

db.list({startkey:'a', include_docs:true}, function(err, data) { console.log(data); })

、あなた照会し、データベースのサブセットを返すことができるようになるとcreate and indexすることができます。設計文書は索引付けの目的では考慮されないため、結果セットには表示されません。

+0

ありがとうございます、スタートキーが理想的です。 – Jake

関連する問題