我拼命地试图调用一个似乎不存在的简单setter方法。
这是我的模型定义:
var Process = Sequelize.MySql.define('Process',{
name: Sequelize.STRING,
description: Sequelize.TEXT,
duration: Sequelize.BIGINT,
status: {
type: Sequelize.ENUM(pstatus.unassigned,pstatus.assigned,pstatus.inprocess,pstatus.stopped,pstatus.finished),
defaultValue: pstatus.unassigned,
set: function(v){
console.log('Prozess status updated')
if(!pstatus.hasOwnProperty(v)){
return
}
this.setDataValue('status',v)
}
}
}
process.setStatus(pStatus.inprocess)的每次调用都会在TypeError 中返回
可能未处理的TypeError:对象[Object SequelizeInstance]没有方法"setStatus"
我在这里错过了什么?
设置程序实现为javascript设置程序
这意味着当您分配给属性时,将调用setter
process.status = 'done' // this invokes the setter