我使用Sequelize存储数据并将其保存到数据库中。
var sequelize = require('../database.js').sequelize,
Sequelize = require('../database.js').Sequelize;
User = sequelize.define('user', {
authID: Sequelize.STRING,
name: Sequelize.STRING,
});
User.prototype.createRider = () => {
console.log('test');
};
module.exports = User;
我尝试使用新方法扩展模型以存储特定类型的用户,但User.prototype.createRider
无法正常工作。可以做些什么?
答案 0 :(得分:0)
有一个"扩展模型" their documentation
中的部分我相信你可以使用classMethods对象
var Foo = sequelize.define('foo', { /* attributes */}, {
classMethods: {
createRider: function(){ return 'smth' }
}
})
答案 1 :(得分:0)
您可以在定义期间在模型上定义实例和类方法。
按如下方式更改sequelize.define
:
User = sequelize.define('user', {
authID: Sequelize.STRING,
name: Sequelize.STRING,
}, classMethods: {
createRider: function() {
console.log('test');
}
});
然后,您可以按预期方式使用classMethods
:
User.createRider();
请参阅Sequelize文档:Model Definition。