【问题标题】:Referencing Sequelize Model in Controller in Node.js在 Node.js 中的 Controller 中引用 Sequelize 模型
【发布时间】:2017-03-27 08:06:12
【问题描述】:

我遇到了一个我似乎无法解决的问题。

我创建了一个模型调用用户。它位于模型文件夹中,名为 Users.js

module.exports = function(sequelize, DataTypes) {
  var Users = sequelize.define("Users", {
    firstName: DataTypes.STRING,
    surname: DataTypes.STRING
  });
  return Users;
};

该表在 postgresql 中完全按照我的想象创建。

现在,我理解它应该如何工作的方式是,在控制器中我可以调用一个创建方法,该方法会将行插入到这个表中。在这种情况下,我有一个名为 home.js 的控制器,如下所示:

Users.sync({force: true}).then(function () {
  return Users.create({
    firstName: "David",
    surname: "Meek"
  });
});

但是,我只是收到错误消息说找不到用户。这是有道理的,我不记得我必须设置它的任何地方。但我也不知道该怎么做?

那么如何让模型对控制器可见?

【问题讨论】:

    标签: javascript node.js express model-view-controller sequelize.js


    【解决方案1】:

    您需要要求您尝试引用的任何文件。

    例如,如果此 module.exports 位于名为 Users.js 的文件中,您会说 var Users = require('./Users')(或用户的任何文件路径)。

    这样你就可以使用这个 JS 文件的导出了。希望这会有所帮助:)

    【讨论】:

      猜你喜欢
      • 2017-07-12
      • 2018-01-23
      • 1970-01-01
      • 2019-05-25
      • 2017-01-27
      • 1970-01-01
      • 2018-11-11
      • 2012-06-23
      • 1970-01-01
      相关资源
      最近更新 更多