sequelize.js - Sequelize - Set Instance Method after BulkCreate -
i have many-to-many relationship between user , organization tables. in both schemas relationship exists .belongstomany({ through: 'org_member', foreignkey: 'id'{);. relationship have been using instance method of setorganizations, setusers add in id's org_member table relationship, however, when run bulkcreate , on ensuing in promise chain call setorganizations([*current users organizationid*]) receive error error during post: typeerror: user.setorganizations not function. find out reason issue. due user being array of objects rather 1 instance?
here promise structure:
1. form submitted multiple emails
-bulkcreate users email
2. take createdusers object of newly created users, parse , pass array query newly created users user_id's use in junction table setting
-emails newly created users passed useremails array used in user.finall query.
3. returned user object uses .setorganizations() method , passes organizationid of current user queried users in junction table
here promise chain:
var users = _.map(req.body.email, function(value) { return { email: value }; }); models.user.bulkcreate(users) .then(function(createdusers){ var useremails = []; for(var key in createdusers){ useremails.push(createdusers[key].email); } return models.user.findall({ where: { email: { $or: useremails} }, attributes: ['userid'] }).then(function(user){ console.log(user); return user.setorganizations([req.user.organizationid]); }).then(function(member){ res.redirect('/app/setup/teams'); });
Comments
Post a Comment