Node.js 如何拯救猫鼬病毒
有人能举例说明如何保存mongoose virtuals以供db使用吗 已在模型中具有此功能:Node.js 如何拯救猫鼬病毒,node.js,express,mongoose,Node.js,Express,Mongoose,有人能举例说明如何保存mongoose virtuals以供db使用吗 已在模型中具有此功能: const userSchema = new Schema({ googleId: String, name: String, email: String, password: String, credits: {type: Number, default: 0}, }); userSchema.virtual('advertisements', {
const userSchema = new Schema({
googleId: String,
name: String,
email: String,
password: String,
credits: {type: Number, default: 0},
});
userSchema.virtual('advertisements', {
ref: 'advertisements',
localField: '_id',
foreignField: '_id',
justOne: false,
options: { sort: { name: -1 }, limit: 5 }
});
mongoose.model('users', userSchema);
在文档中,有关于数据填充和存储的信息,但如何看起来像是正确的保存
它必须是user.advisions.localfield=localfield
左右吗?
或者它是如何工作的
Mongoose支持虚拟属性。虚拟属性是属性
方便携带,但不会持久化到mongodb
您无法保存虚拟数据,它是唯一的getter
Virtual是您可以获取和设置的文档属性,但实际上是这样的
不能持久化到MongoDB。这些getter对于格式化或删除数据非常有用
组合字段,而setter对于分解单个字段很有用
将值转换为多个值进行存储
这意味着我们可以仅将Virtuals用于数据准备,例如,我们可以合并名字
和姓氏
或使用引用填充文档