sequelize 关联表后更新的问题

发布于 2022-09-04 06:07:17 字数 1227 浏览 24 评论 0

做一个小项目有class表跟student两个表

    classinfo: sequelize.define('classinfo', {
        className: Sequelize.STRING,
        describe: Sequelize.STRING
    }),
    
    student: sequelize.define('student', {
        name: Sequelize.STRING,
        stuCode: Sequelize.STRING,
    })
    
    //创建 班级-学生 1:n 关系
models.classinfo.hasMany(models.student);
models.student.belongsTo(models.classinfo);

添加删除问题都不大...但是更新学生信息的时候好像不能同时修改所属班级?
只能先update表数据再setClassinfo()的样子,可是这样子查询次数多了好多啊效率不高啊

我尝试像查询那样子修改

classinfo.findById(req.body.classId).then(function(classinfo) {
            student.update({
                name: req.body.name,
                stuCode: req.body.stuCode,
                classinfo:classinfo
            }, {
                where: { id: req.body.id },
                include: [global.DBModels.classinfo]
            })
            }

数据被修改成功了,但是classinfoId没有被修改掉...
直接

student.update({
                name: req.body.name,
                stuCode: req.body.stuCode,
                classinfoId:2
            }

这样子可以但是感觉不是很规范的样子啊

求教各位这应该怎么处理?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

鸠魁 2022-09-11 06:07:17

同问,楼主解决了吗

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文