Mysql
 sql >> база данни >  >> RDS >> Mysql

findAll() от Sequelize не получава

Sequelize връща масив от instance обекти в потребителите. instance обектът има прикрепени към него редица удобни методи, които ви позволяват да действате върху него.

Ако искате да получите само данните с вашите полета като ключове, използвайте get({plain: true}) . Например за първия обект в масива users[0].get({plain: true}) . Ако искате да продължите да използвате екземплярите, можете просто да използвате get с името на вашето поле. Например, users[0].get('nombre') .

Трябва също така да имате достъп до свойствата директно на обекта, дори ако те не се регистрират, като users[0].nombre .

Редактиране

Това не е свързано с оригиналния въпрос, а вашият коментар към друг отговор. Уверете се, че правите нещата асинхронно. Кодът трябва да бъде:

usuarioService.getAll = function (cb) {
    Usuario.findAll().then(function (users) {
        return cb(null, users);
    }).catch(function(err) {
        return cb(err);
    });
}

След това, когато извиквате този метод, бихте направили нещо като:

router.get('your_path', function(req, res, next) {
    serv.getAll(function(err, users) {
        if (err) {
            // your err handling code
        }
        // users is now a valid js array
        // could send it in res.json(users)
    });
});

или

Тъй като Sequelize използва обещания, най-добрият начин ще бъде да се направи това с обещания.

usuarioService.getAll = function () {
    return Usuario.findAll({ raw: true });
}

След това, когато извиквате този метод, бихте направили нещо като:

router.get('your_path', function(req, res, next) {
    serv.getAll().then(function(users) {
        res.render('usuarios/index',{
            users: users
        })
    }).catch(function(err) {
        // your error handling code here
    });
});


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Можем ли да имаме името на таблицата като опция в MySQL?

  2. Синтактична грешка при използване на разделители с MySQL без сървър Aurora 5.6

  3. Как да видите текущите връзки в MySQL Workbench с помощта на GUI

  4. Инсталиране на gem:Неуспешно изграждане на родно разширение на gem (не мога да намеря заглавни файлове)

  5. Как мога да коригирам MySQL Load Error