MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Erro de loopback:autorização necessária


Vendo seu último pergunta Imagino o que aconteceu.

De alguma forma, a coleção Role foi criado, mas não mapeado para User .

Sugiro que altere:
Role.find({ name: 'admin' }, function(err, results) {
            if (err) { throw err; }

            if (results.length < 1) {
                // now we know the DB doesn't have it already, so do the Role creation...
                //create the admin role
                Role.create({
                  name: 'admin'
                }, function(err, role) {
                  if (err) throw (err);
                   //make admin
                  role.principals.create({
                    principalType: RoleMapping.USER,
                    principalId: users[0].id
                  }, function(err, principal) {
                    if (err) throw (err);
                  });
                });
            }
        });

Por:
Role.create({
      name: 'admin'
    }, function(err, role) {
      if (err) throw (err);
       //make admin
      role.principals.create({
        principalType: RoleMapping.USER,
        principalId: users[0].id
      }, function(err, principal) {
        if (err) throw (err);
      });
    });

Elimine a coleção Role:db.Role.drop() e execute o Loopback novamente.

Nota:Eu estava fazendo a mesma tarefa e funcionou para mim.