如何在Mongoose中使用population / ref保存Schema
先有用户,然后创build商店。 如何做创build商店和参考用户?
- 1个用户对许多sotres
- 1个商店给1个用户
//架构
var UserSchema = new Schema({ name: String, stores : [{ type: Schema.Types.ObjectId, ref: 'Store' }] }); var StoreSchema = new Schema({ name: String, user : [{ type: Schema.Types.ObjectId, ref: 'User' }] }); mongoose.model('Store', StoreSchema); mongoose.model('User', UserSchema);
// express / mongoose save()
exports.storeAdd = function (req, res) { new Store({ name : 'store 1', user : [{_id:req.session._id}] }).save(); };
它不工作,请帮助thx
var StoreSchema = new Schema({ name: String, user : [{ type: Schema.Types.ObjectId, ref: 'User' }] });
这实际上定义了商店和用户之间的一对多关系。 这是故意的吗? 如果不是的话,你应该删除用户的[,]以及save()。
检查以确保req.session._id有一个有效的mongoose对象ID,这是保存不起作用的最可能的原因。