【问题标题】:sequelize returning undefined续集返回未定义
【发布时间】:2019-02-13 09:54:27
【问题描述】:

我正在使用带有 Express js 的 sequelize,它已链接到 postgresql 数据库。

我正在尝试返回表 vendor 中的所有供应商(列:供应商、类别和 id)。我正在使用以下 findall() 函数来实现这一点:

router.get('/', function(req, res, next) {
  models.vendors.findAll({attributes: ['vendor','category','id']}).then(function(vendors) {
    res.render('index', {
      title: 'Budget',
      vendors: vendors
    });
    console.log(vendors[0])
  });
});

console.log 的输出如下

vendors {
   dataValues:
   { vendor: 'FIRSTVENDOR',
     category: null,
     id: 1},
....

以下函数返回未定义而不是预期的“FIRSTVENDOR”。

console.log(vendors[0].vendor) 

但是下面的函数可以工作。

console.log(vendors[0].id)

我想我需要以某种方式声明变量类型?

为了创建数据库,我执行了以下操作:

CREATE TABLE vendors(id serial, vendor text primary key, category text default NULL, total float8);

【问题讨论】:

    标签: node.js postgresql express sequelize.js


    【解决方案1】:

    我在模型对象中有错字。我换了

      const vendors = sequelize.define('vendors', {
        vendors: DataTypes.STRING
       }, {});
    

    与

      const vendors = sequelize.define('vendors', {
        vendor: DataTypes.STRING,
        category: Datatypes.STRING
       }, {});
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-10
      • 1970-01-01
      • 2014-01-29
      • 1970-01-01
      • 2019-11-17
      • 2015-07-13
      • 1970-01-01
      • 2016-11-18
      相关资源
      最近更新 更多