【发布时间】:2016-11-02 14:46:26
【问题描述】:
我有一个应该删除数据库行的函数。该函数获取应删除的行的 id。该函数还应返回已删除的行以执行一些文本输出。
deleteProcess(processToDeleteId: any): Promise<ProcessInstance> {
let deletedProcess;
let value;
for (let key in processToDeleteId) {
if (processToDeleteId.hasOwnProperty(key)) {
value = processToDeleteId[key];
}
}
this.sequelize.query("select * from Processes where processId = ?",
{ replacements: [value], type: this.sequelize.QueryTypes.SELECT })
.then(function (processes) {
for (let item in processes) {
if (processes.hasOwnProperty(item)) {
deletedProcess = processes[item];
console.log(deletedProcess);
}
}
})
.delay(20);
let that = this;
return new Promise<ProcessInstance>(
(function (resolve, reject) {
that.sequelize.query("delete from Processes where processId = ?",
{ replacements: [value], type: that.sequelize.QueryTypes.DELETE })
.then(function () {
console.log('Deleted successfully');
return deletedProcess;
})
reject(function (err) {
console.log(err);
})
})
)
};
问题是该函数在删除项目时运行良好,它还加载了被删除的行,但不返回该行
【问题讨论】:
标签: typescript sequelize.js bluebird