выбрать из couchdb в колыбели nodejs? - PullRequest
1 голос
/ 27 октября 2011

У меня есть couchdb и document my_users, который выглядит так:

_id
password
email
...

как я могу выбрать _id для _id и пароля.Я хотел бы что-то вроде mysql select _id from my_users where _id = "mylogin" and password = "mypassword"

я использую колыбель

и пытаюсь что-то вроде этого:

db.save('_design/user', {
    views: {
       byUsername: {
          map: 'function (doc) { if (doc.resource === "my_users") { emit(doc._id) } }'
              }
            }
          });   


this.db.view('user/byUsername', { key: 'myuser' }, function (err, doc) {       

              console.dir(doc);   ///this is empty array :|
          });    

но это не работает, как правильно его использовать??

1 Ответ

1 голос
/ 27 октября 2011

Вы можете отправить одновременно и _id, и password.

function(doc) {
  var key;
  if(doc.resource == "my_users") {
    key = [doc._id, doc.password];
    emit(key, null);
  }
}

Чтобы найти совпадение имени пользователя и пароля, найдите один и тот же ключ.

var username = 'myuser';
var password = 'secret';
var key = [username, password];
this.db.view('users/byUsernamePassword', {"key":key}, function(err, doc) {
  console.log("Result:");
  console.dir({"err":err, "doc":doc});
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...