étrangère J'ai deux modèles, Article
et ArticleGroup
:SequelizeJS: Lot réglage clé
sequelize.define('article', {
GROUP_CODE: {
type: DataTypes.STRING,
},
...
}, {
classMethods: {
associate: function(models) {
this.belongsTo(models.articleGroup);
},
},
});
...
sequelize.define('articleGroup', {
GROUP_CODE: {
type: DataTypes.STRING,
},
...
});
Je travaille avec des données héritées où la connexion entre ces deux est faite avec le champ GROUP_CODE
. J'ai ajouté une clé étrangère au modèle article
. Le problème est lorsque j'essaie de mettre à jour cette clé étrangère. Voici le code avec lequel je suis en train d'accomplir cela:
let db = require('../models');
db.articleGroup.findAll().then((groups) => {
groups.forEach((group) => {
db.article.update({groupArticleId: group.id}, {where: {GROUP_CODE: group.GROUP_CODE}});
});
});
Avec ce code, je reçois un tas de:
...
Executing (default): UPDATE `article` SET `updatedAt`='2017-08-05 12:43:02' WHERE `GROUP_CODE` = '6'
Executing (default): UPDATE `article` SET `updatedAt`='2017-08-05 12:43:02' WHERE `GROUP_CODE` = '11'
Executing (default): UPDATE `article` SET `updatedAt`='2017-08-05 12:43:02' WHERE `GROUP_CODE` = '1'
...
C'est la mise à jour du updatedAt
mais pas le champ groupArticleId
. Comment puis-je accomplir cela?