我第一次使用Mongo,并且在创建具有数组的文档时遇到困难。 该对象被传递到的NodeJS服务器,像这样:Mongoose - 将数组插入到mongo DB
{
"customerid":"121212",
"name": "Zero 2679",
"email": "[email protected]",
"address": "bla bla bla",
"tokens":[{"ctoken":"123456"},{"ctoken":"1234567"}]
}
代码执行:
var newCustomer = new Customer(
{
_id: request.body.customerid,
name: request.body.name,
email: request.body.email,
address: request.body.address,
tokens:request.body.tokens
});
newCustomer.save(function (err) {
if (err) winston.log('error', err);
// saved!
})
架构配置像这样:
var customerSchema = new Schema({
// index: true => Tells mongo to index this paramater because it is used frequently. It makes querying faster
_id: {type: String, unique: true}, // unique customer ID
name: {type: String, default: '', required: true}, // Customer name
//email: {type: mongoose.SchemaTypes.Email, required: true},
email: {type: String, required: true},
address: { type: String, required: true },
toknes: [{ ctoken :{type: String} }]
}, {collection: 'customers'});
当我去看看MongoDB中的对象,它看起来像这样:
{
"_id": "121212",
"email": "[email protected]",
"address": "bla bla bla",
"tokens": [],
"name": "Zero 2679",
"__v": 0
}
令牌丢失,并有'_v'值,我甚至没有。
请告知我做错了什么?
_v是来自mongo,不用担心 –