2014-05-23 25 views
0

Schema工作:MongooseJS markModified不與裝飾

var Variation = new Schema({ 
    upc: { 
    type: String, 
    trim: true 
    } 
},{ _id : false }); 

var Product = new Schema({ 
    variations: { 
    type: [Variation] 
    } 
}); 

的UPC字段包含: '82943949232'

代碼更新:

Product.findById('11212121212121212', function(err, p) { 
    p.markModified('variations'); 
    p.save(function(e, product) { 
     console.log(product); 
    }); 
}); 

領域仍然有空間。

這是怎麼回事?

回答

0

您的代碼不起作用,因爲trim()在設置值時執行。當您將嵌入文檔標記爲已修改時,set()未被調用,並且因爲trim()也未被調用。