Aが

2017-09-20 12 views
2

をBに関連付けられていないがAが

...それらのどれもが私を助けていない、同様の質問/エラーに関するインターネット上の未処理の拒絶SequelizeEagerLoadingErrorを見て:タスクは、ユーザーに関連付けられていません!

マイユーザールート

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

Userモデル

'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; 
}; 

私はそれらの両方を関連付け、および双方向の関係を作っ..

答えて

0

と関連付けてファインダ関数を使用している場合は、オプションとして、明示的にどこにも定義されていないので、Sequelizeはそのエイリアスを見つけることができません。この1つを試してください:

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

希望します。

+0

まだ同じエラーが発生しています... – yooouuri

関連する問題