如何检查Sequelize中是否存在一个belongsToMany关联

编程入门 行业动态 更新时间:2024-10-07 20:31:12

如何检查Sequelize中<a href=https://www.elefans.com/category/jswz/34/1759542.html style=是否存在一个belongsToMany关联"/>

如何检查Sequelize中是否存在一个belongsToMany关联

我有两个模型,其关联定义如下

Product.belongsToMany(models.Disease, {through: 'DiseaseProduct'});

DiseaseProduct表是通过在此自动创建的,并具有两列DiseaseIdProductId

我已经经历过几次documentation,但是似乎无法正确运行hasDisease函数来检查某种疾病是否与产品相关(它总是返回false)。但是,我可以执行以下操作,该命令可以正常运行。

var prod = await Product.findByPk(1);
prod.addDisease(1);

我想做的是检查疾病与以下类似产品的关联

var prod = await Product.findByPk(1);
prod.addDisease(1); //this runs correctly
prod.hasDisease(1); //the promise should resolve to true

我尝试过的

prod.hasDiseases(1);
prod.hasDiseases([1]);
回答如下:

所以问题在于将字符串传递给prod.hasDisease()函数。

当我通过如下所示的express中的请求变量将参数传递给此函数时>

prod.hasDisease(req.body.diseaseId);

尽管总是同时运行prod.addDisease(req.body.diseaseId)并没有问题并通过数据透视表关联疾病,但它总是返回false。

无论如何,解决方案是将字符串转换为数字,例如

prod.hasDisease(Number(req.body.diseaseId));

不敢相信我在此上浪费了4个小时!

更多推荐

如何检查Sequelize中是否存在一个belongsToMany关联

本文发布于:2024-05-07 20:36:39,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1757138.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:是否存在   Sequelize   belongsToMany

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!