【发布时间】:2017-04-06 16:10:40
【问题描述】:
我有一个名为“Ticket”的模型,它的架构是:
var TicketItemSchema = new Schema({
externalId: String,
price: Number,
quantity: {
type: Number,
default: 1
},
comment: {
type: String,
default: '',
trim: true
}
});
我想在我的 'ticket' 对象中创建一个名为 'entity' 的新字段,该字段应自动添加并填充实体集合中的对象。
但问题是:我想使用 mongod 默认“id”以外的唯一字段。所以“填充”在这种情况下不起作用。
作为一种解决方法,在票证的模型类中,我尝试了这样的方法:
var Entity = mongoose.model('Entity').schema;
...
TicketItemSchema.virtual('entity').get(function() {
Entity.findOne({
"externalId": this.externalId
}, function(err, entity) {
return entity;
});
});
但它不起作用。那么您对此有何看法?
【问题讨论】: