Javascript addProject不是一个函数(Sequelize)
在我的应用程序中,我在Javascript addProject不是一个函数(Sequelize),javascript,sequelize.js,Javascript,Sequelize.js,在我的应用程序中,我在用户和项目表之间建立了关联。使用此代码: User.belongsToMany(Project, { through: "users_projects" }); Project.belongsToMany(User, { through: "users_projects" }); 当我执行一个简单的post请求时,会出现以下错误: currentUser.addProject不是一个函数 什么可能导致此问题?findAll返回一个数组,因此您的代码应该是
用户
和项目
表之间建立了关联。使用此代码:
User.belongsToMany(Project, {
through: "users_projects"
});
Project.belongsToMany(User, {
through: "users_projects"
});
当我执行一个简单的post请求时,会出现以下错误:
currentUser.addProject不是一个函数
什么可能导致此问题?
findAll
返回一个数组,因此您的代码应该是
await currentUser[0].addProject(project[0])
但是,如果使用id
进行查询,则可以使用findByPk
获取对象
const currentUser = await User.findByPk(req.body.userId);
await currentUser.addProject(project[0])
findAll
返回一个数组,因此您的代码应该是
await currentUser[0].addProject(project[0])
但是,如果使用id
进行查询,则可以使用findByPk
获取对象
const currentUser = await User.findByPk(req.body.userId);
await currentUser.addProject(project[0])
或者,如果id不是主键,则可以使用
findOne
代替原始代码中的findAll
,这不太可能,但如果搜索是通过电子邮件进行的。或者,如果id不是主键,则可以使用findOne
代替原始代码中的findAll
,这不太可能,但如果搜索是通过电子邮件进行的话。