Как получить данные в дальнейшем, используя Noje JS - PullRequest
0 голосов
/ 27 октября 2018

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

   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.log(users);

   [ DAO {
        dataValues: 
         { idProject: 1,
           projectName: 'Symfony',
           isActive: '1',
           createdAt: 2018-10-23T06:32:43.000Z,
           modifiedAt: 2018-10-23T06:32:43.000Z },
        _previousDataValues: 
         { idProject: 1,
           projectName: 'Symfony',
           isActive: '1',
           createdAt: 2018-10-23T06:32:43.000Z,
           modifiedAt: 2018-10-23T06:32:43.000Z },

        options: { isNewRecord: false, isDirty: false, raw: true },
        hasPrimaryKeys: true,
        selectedValues: 
         RowDataPacket {
           idProject: 1,
           projectName: 'Symfony',
           isActive: '1',
           createdAt: 2018-10-23T06:32:43.000Z,
           modifiedAt: 2018-10-23T06:32:43.000Z },
        __eagerlyLoadedAssociations: [],
        isNewRecord: false }.....

Это console.log (users.dataValues);

undefined

Как это возможно?

1 Ответ

0 голосов
/ 28 октября 2018

Когда вы используете findAll , он возвращает массив, как вы можете видеть здесь в документации: http://docs.sequelizejs.com/class/lib/model.js~Model.html#static-method-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 / Await для более чистого кода:

 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);
 }
...