在我的Sequelize模型中,我在 Votes
的连接表中有很多关联,当 User
投票给 Response
时存储,并存储投票的值, true
是upvote, false
是downvote .
投票模型和关系定义如下:
// vote.js
module.exports = (sequelize, DataTypes) => {
return sequelize.define('Vote', {
upVote: {
type: DataTypes.BOOLEAN,
allowNull: false
}
})
}
// user.js
models.User.belongsToMany(models.Response, {
through: models.Vote,
as: 'Votes'
})
// response.js
models.Response.belongsToMany(models.User, {
through: models.Vote,
as: 'Votes'
})
一切都按预期工作,直到我达到用户更改投票的程度 . 如果按下向上/向下按钮并向用户提交的内容提交不同的值,我需要以某种方式更新连接表条目,或者删除它并制作另一个 . 问题是尝试在投票时使用“销毁”或“更新”会产生未知的方法错误 . 处理这个问题的正确方法是什么?