2016-12-09 14 views
0

CloudantDBを使用してノード上に簡単なアプリケーションを作成していますが、単純に電子メールでユーザーを検索する方法が見つからない場合があります。クラウドの簡単な検索方法は?

MongoDBでは私は次のようにします:db.find({email: "[email protected]"});

Cloudantについても同じことができると思っていましたが、Cloudant Documentation(https://docs.cloudant.com/document.html)やgithubの例(https://github.com/david-araujo/nodejs-cloudant)では何も見つかりませんでした。

は私のコードに従ってください:

Cloudant = require('cloudant') 

const DB_CONN = { 
     account : 'user.cloudant.com', 
     password: 'clodantpass' 
}; 

let cloudant = Cloudant(DB_CONN); 
let db = cloudant.use('teste'); 

// SIMPLE INSERT 
db.insert({name : 'test', email : '[email protected]'}, (err, data) => { 
    console.log(data); 
}); 

// SIMPLE FIND 
??? 

答えて

4

をあなたは、単純な、MongoDBのスタイルのクエリを行うためにCloudant Queryを使用することができます。

var query = { 
    "selector": { 
    "email" : "[email protected]" 
    } 
}; 

db.find(query, function(err, data) { 
    // 'data' contains results 
}); 

詳細については、hereを参照してください。

+0

Glynnのおかげで、ありがとうございました。私の唯一の関心事は、クエリ文字列について何も見つけられなかったことです。私は、公式の文書がより良いかもしれないと信じています。 –

+0

「セレクタ構文」セクションが最適です:https://docs.cloudant.com/cloudant_query.html#selector-syntax –

+0

https://www.npmjs.com/packageのCloudant npmパッケージの公式ドキュメント/ cloudant states: 'インデックスを使用してクエリを実行するには、.find()メソッドを使用します。つまり、 'db.find({selector:{name: 'Alice'}}、function(er、result){});'セレクタは、上記のリンクのCloudantクエリで有効な任意のクエリです。 – ramdesh