如何将对象的数组保存在mongoose中

我从angular度来看这个数据

{ "name": "Test name", "conditions": [ { "id": "56a53ba04ce46bf01ae2bda7", "name": "First condition" }, { "id": "56a53bae4ce46bf01ae2bda8", "name": "Second condition" } ], "colors": [ { "id": "56a545694f2e7a20064f228e", "name": "First color" }, { "id": "56a5456f4f2e7a20064f228f", "name": "Second color" } ] } 

我想保存在mongoDb的ProductSchema中,但我不知道如何为此创build模式

 var ProductSchema = new Schema({ name: String, conditions: [Array], colors: [Array] }); 

以及如何保存在服务器控制器中进行build模

  var product = new Products({ name: req.body.name, conditions: req.body.conditions, colors: req.body.colors }); 

当我使用这个架构和这个控制器,我收到除了名称和ObjectId集合中的空logging。 如何创build正确的模式和控制器?

创build模式后,您需要创build一个mongoose模型,然后您可以保存它。 尝试这样的事情:

 var ProductSchema = new Schema({ name: String, conditions: [{}], colors: [{}] }); var Product = mongoose.model('Product', productSchema); var product = new Product({ name: req.body.name, conditions: req.body.conditions, colors: req.body.colors }); product.save( function(error, document){ //callback stuff here } );