javascript - 检索导入的 Sequelize 模型

标签 javascript node.js sequelize.js

我是第一次使用 Sequelize,所以请耐心等待))
我创建了名为“models”的主要 Sequelize 连接文件,它看起来像:

var sequelize = new Sequelize(
        dbsettings['database'],
        dbsettings['username'],
        dbsettings['password'],
        ...
        }),
    User = sequelize.import(__dirname+'/user'),
    Role = sequelize.import(__dirname+'/role');

User.belongsToMany(Role, {through: 'user_roles'});
Role.belongsToMany(User, {through: 'user_roles'});

module.exports = sequelize;

例如,如何在我的 Controller 中为 User.findById() 调用 User 模型?
如果我导入这个文件并尝试调用类似 models.User.findById 的东西,我将一无所获。请向我解释这个概念。

最佳答案

你应该导出你的模型,并导入到你的 Controller ,然后使用这个:

  User.findOne({ where: { id: userId } })
  .then(function(user) {
    if (!user) {
      //raise error or log it
    } else {
      // everything is ok, use returned user object
      console.log(user.name);
    }
  });

只是你应该记住,任何数据库操作都是异步调用,而 Sequelize 正在返回 promise 。

关于javascript - 检索导入的 Sequelize 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34444622/

相关文章:

javascript - Node.js 错误日志包含更多信息

sql-server - 使用 Sequelize 进行 NOLOCK 查询

javascript - 使用 javascript 或 jquery 编辑浏览器的查询字符串

javascript - 我可以获得有关二分搜索实现失败的反馈吗?

javascript - 如何通过相对路径获取 URL? - Javascript

mysql - Node.js 4.2.2 中与 mysql 实时数据的握手问题

python - 如何在 ReactJS Docker 中热重载

node.js - Sequelize.JS Postgresql- 如何从关联表求和以比较主表中的字段

对 PostgreSQL 表的 SQL 查询

javascript - 如何在单击时切换 AccordionContainer?