Я использую nodejs
Это моя функция с именем createSchema:
const createSchema = () => {
Business.findAll({
raw: true,
}).then((data) => {
data.forEach((client) => {
postgresDB.createSchema(client.code).then(() => {
Object.keys(postgresDB.models).forEach((currentItem) => {
postgresDB.models[currentItem].schema(client.code).sync();
});
console.log('Postgres schema created');
}).catch(() => {
});
});
}).catch((err) => {
console.log('Warning:', err.message);
});
};
createSchema();
Я вызываю эту функцию внутри этой пост-функции
exports.createBusiness = (req, res) => {
const business = {
name: req.body.name,
code: req.body.code,
email: req.body.email,
};
Business.create(business)
.then((rawbusinessData) => {
createSchema() // this is the function
.then(() => { . // i want to complete createSchema fully then only i want to execute this below stuffs
const businessData = rawbusinessData.get({ plain: true });
const loginDetails = {
username: 'sameer',
password: encrypt('sameer'),
};
const schemaLogin = postgresDB.models.login.schema(businessData.code);
schemaLogin.create(loginDetails).then((loginData) => {
console.log('loginData:', loginData);
});
res.status(200).send(businessData);
});
})
.catch((err) => {
console.log('err:', err);
});
};
Явызов первой функции внутри моей второй пост-функции с именем createBusiness ,
Я хочу полностью завершить функцию createSchema, тогда только мне нужно выполнить другой затем метод ()во второй функции под названием createBusiness
См. мой код, я сделал комментарий, который должен работать в первую очередь,
Я пытался с асинхронным ожиданием, но не работает!