是否建议将非持久属性添加到Objection模型对象,以使其不会覆盖预定义属性?
答案 0 :(得分:2)
异议模型具有virtualAttributes字段。来自文档:
虚拟值不会写入数据库。只有“外部”JSON格式才会包含它们。
重要的是要注意这些是函数,而不仅仅是模型属性。
文档示例:
class Person extends Model {
static get virtualAttributes() {
return ['fullName', 'isFemale'];
}
fullName() {
return `${this.firstName} ${this.lastName}`;
}
get isFemale() {
return this.gender === 'female';
}
}
const person = Person.fromJson({
firstName: 'Jennifer',
lastName: 'Aniston',
gender: 'female'
});
console.log(person.toJSON());
// --> {"firstName": "Jennifer", "lastName": "Aniston", "isFemale": true, "fullName": "Jennifer Aniston"}