【发布时间】:2018-05-11 17:03:27
【问题描述】:
有没有一种方法可以让我使用一个基类,该基类具有我的模型的所有公共属性和方法,但不与数据库表链接,然后我可以在定义新模型时扩展这个基类。
在这里,我在 node express 中创建了基本的 person 模型。我需要从基类扩展 person 类。
const person = sequelizeClient.define('person', {
name: {
type: DataTypes.STRING,
allowNull: false
}
}, {
hooks: {
beforeCount(options) {
options.raw = true;
}
}
});
const base = sequelizeClient.define('base', {
id: {
type: Sequelize.INTEGER,
autoIncrement: true,
primaryKey: true
},
createdBy: {
type: Sequelize.INTEGER,
},
updatedBy: {
type: Sequelize.INTEGER,
},
deletedBy: {
type: Sequelize.INTEGER,
}
}, {
hooks: {
beforeCount(options) {
options.raw = true;
}
}
});
在文档中说
Sequelize 模型是 ES6 类。您可以非常轻松地添加自定义实例或类级别的方法。
如何使用 ES6 扩展类模式来做到这一点?
有一个类似的问题,但最近没有更新。 How to extend Sequelize model
【问题讨论】:
-
你使用的是什么版本的 Sequelize?
-
续集版本为v4.23.1
标签: javascript express ecmascript-6 sequelize.js feathersjs