我有一个猫鼬模型,它将成为User
模型的子对象。它将是一对多关系(用户将拥有许多块)。对我来说,在这种情况下,嵌入不是答案。所以我尝试将user_id
添加到我的Block
模型,并将block_ids
数组添加到我的User
模型中。我的块看起来像这样:
var mongoose = require('mongoose');
module.exports = mongoose.model('Block',{
name:String,
status:String,
type:String,
user_id:String,
});
当我使用当前用户的ID保存新块时,它不会保存该属性。我认为这是因为我已经在模式中声明它是String类型而不是Objectid,但我不确定如何将它声明为用户模型的对象ID。
答案 0 :(得分:2)
使用Schema.Types.ObjectId而不是String
var mongoose = require('mongoose');
var Schema=mongoose.Schema;
module.exports = mongoose.model('Block',{
name:String,
status:String,
type:String,
user_id:Schema.Types.ObjectId
});