gpt4 book ai didi

mysql - Sequelize : Updating Model and its Associations

转载 作者:行者123 更新时间:2023-11-30 21:50:57 25 4
gpt4 key购买 nike

我有以下表格:

  1. 事件
  2. 任务

和以下关联

Event.hasMany(models.Tasks, {
as: 'tasks',
foreignKey: 'event_id'
})

我正在使用以下代码来更新一个Event 和一个Tasks 数组

db.Event.findOne({
where: {
id: eventToUpdate.id
},
include: [{
model: db.Tasks,
as: 'tasks',
}]
}).then((existingEvent) => {
// Loop through existingEvent attributes and existingEvent.dataValues.tasks and
// updated the attributes
}

但是,当我更新它时:

        db.Event.update(existingEvent, { where: { id: existingEvent.id } })
.then((updatedEvent) => {
console.log(updatedEvent)
}).catch((error) => {
console.log("Error + error)
})

只有 Event 在数据库中更新,而不是它的 Tasks

我做错了什么?还是有更好的方法来实现这一点?

最佳答案

很难在评论中更新它。但这是我建议做的,

db.Event.findOne({
where: {
id: eventToUpdate.id
},
include: [{
model: db.Tasks,
as: 'tasks',
}]
}).then((existingEvent) => {
return Promise.all(existingEvent.tasks.map(task => task.updateAttributes(taskParams).then(console.log).catch(console.log));
}

关于mysql - Sequelize : Updating Model and its Associations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47313906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com