Node.js 如何使用Noje js在sequelize中获取数据

Node.js 如何使用Noje js在sequelize中获取数据,node.js,sequelize.js,sequelize-cli,Node.js,Sequelize.js,Sequelize Cli,这是我使用的代码,获取了数据库中的所有数据,但我并没有获取值。我是续集新手 Project.findAll({ raw: true}).then(function (users) { console.log(users); console.log(users.dataValues); }).catch(function (err) { console.log('Oops! something went wrong, : ', err);

这是我使用的代码,获取了数据库中的所有数据,但我并没有获取值。我是续集新手

   Project.findAll({ raw: true}).then(function (users) {
        console.log(users);
  console.log(users.dataValues);

    }).catch(function (err) {
        console.log('Oops! something went wrong, : ', err);
    });
这是输出: 这是console.logusers

这是console.logusers.dataValues

undefined
怎么可能呢?

当您使用findAll时,它会返回一个数组,您可以在文档中看到:

因此,您应该迭代这个数组,如下所示:

 Project.findAll({ raw: true})
 .then(projects => {
    projects.forEach(project => {
       console.log(project);
       console.log('project name', project.projectName);
    })
 }).catch(function (err) {
     console.log('Oops! something went wrong: ', err);
 });
您还可以选择使用Async/Wait来获得更清晰的代码:

 try {
   const projects = await Project.findAll({ raw: true});
   projects.forEach(project => {
        console.log('project name ', project.projectName);
   })
 } catch(err) {
     console.log('Oops! something went wrong: ', err);
 }
 try {
   const projects = await Project.findAll({ raw: true});
   projects.forEach(project => {
        console.log('project name ', project.projectName);
   })
 } catch(err) {
     console.log('Oops! something went wrong: ', err);
 }