Как сохранить ассоциации с базой данных, используя Sequelize - PullRequest
0 голосов
/ 23 октября 2018

Я пытаюсь установить связь:

models.TemplateTimeSpan.bulkCreate(spansJSONArray).then( newSpans => {
    var promises = []
    for (i = 0; i < newSpans.length; i++) { 
       var newSpan = newSpans[i];
       newSpan.setThing(thing); // `thing` is fetched earlier
       var promise = newSpan.save();
       promises.push(promise);
    }
    Promise.all(promises).then(function(updatedSpans) { 
       models.TemplateTimeSpan.findAll().then( fs => {
         return res.json(fs);
       });
    });
});

Модели выглядят так:

Вещь:

Thing.associate = models => {
   Thing.hasMany(models.TemplateTimeSpan, { foreignKey: {
     name: 'templateTimeSpanID',
     allowNull: true
  } 
});

TemplateTimeSpan:

TemplateTimeSpan.associate = models => {
    TemplateTimeSpan.belongsTo(models.Mechanic, { foreignKey: 'templateTimeSpanID' });
};

Когда я выбираю все TemplateTimeSpans s в then из Promise.all, он возвращает все из них, и все они имеют templateTimeSpanID: null, но updatedSpans имеет templateTimeSpanID: <ThingID>.

...