Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js A与B没有关联_Node.js_Associations_Sequelize.js - Fatal编程技术网

Node.js A与B没有关联

Node.js A与B没有关联,node.js,associations,sequelize.js,Node.js,Associations,Sequelize.js,在互联网上看到类似的问题/错误,没有一个能帮到我 未处理的拒绝SequelizeAgerLoadingError:任务未与用户关联 我的用户路线 router.get('', function (req, res) { models.User.findAll({ include: [ { model: models.Task, as: 'tasks' } ] }).then(function (users) {

在互联网上看到类似的问题/错误,没有一个能帮到我

未处理的拒绝SequelizeAgerLoadingError:任务未与用户关联

我的用户路线

router.get('', function (req, res) {
  models.User.findAll({
    include: [
      {
        model: models.Task,
        as: 'tasks'
      }
    ]
  }).then(function (users) {
    res.send(users);
  });
});
用户模型

'use strict';

module.exports = (sequelize, DataTypes) => {
  const User = sequelize.define('User', {
    first_name: DataTypes.STRING,
    last_name: DataTypes.STRING,
    email: DataTypes.STRING
  }, {
    underscored: true
  });

  User.associations = function (models) {
    User.hasMany(models.Task, { as: 'tasks' });
  };

  return User;
};
任务模型

'use strict';

module.exports = (sequelize, DataTypes) => {
  const Task = sequelize.define('Task', {
    name: DataTypes.STRING
  }, {
    underscored: true
  });

  Task.associations = function (models) {
    Task.belongsTo(models.User);
  };

  return Task;
};

我将两者关联起来,并建立了一个双向关系。

当您使用finder函数与As选项关联时,Sequelize无法找到该别名,因为它没有在任何地方明确定义。请试试这个:

User.associations = function (models) {
  User.hasMany(models.Task, { as: 'tasks' });
};

希望这有帮助。

嗨,yooouuri,你能解决这个问题吗?这不是他正在尝试的吗?