技术实践
Sequelize如何设置虚拟字段
如果有一种简单的方法能直接获取 全名 那会非常好! 我们可以将 getters 的概念与 Sequelize 针对这种情况提供的特殊数据类型

如果有一种简单的方法能直接获取 全名 那会非常好! 我们可以将 getters 的概念与 Sequelize 针对这种情况提供的特殊数据类型结合使用:DataTypes.VIRTUAL,有很多同学没有仔细去看这里,注意类型 VIRTUAL
js
const { DataTypes } = require("sequelize");
const User = sequelize.define('user', {
firstName: DataTypes.TEXT,
lastName: DataTypes.TEXT,
fullName: {
type: DataTypes.VIRTUAL, // 注意填写这里
get() {
return `${this.firstName} ${this.lastName}`;
},
set(value) {
throw new Error('不要尝试设置 `fullName` 的值!');
}
}
});
js
const user = await User.create({ firstName: 'John', lastName: 'Doe' });
console.log(user.fullName); // 'John Doe'