2016-04-14 107 views
0

我想保存sails.js模型中的嵌套對象。 這是它的樣子:如何使用Sails.js和MongoDB存儲嵌套對象數組?

module.exports = { 
    schema: true, 
    attributes: { 
     label: { 
      type: 'string', 
      required: true, 
     }, 
     consumption: [{ 
     timestamp: { 
      type: 'string', 
      required: true, 
     }, 
     value: { 
      type: 'float', 
      required: true, 
     }, 
     }], 
    } 
}; 

要包括數組中的值我做了以下(內部控制器):

if(!plug.consumption) 
    plug.consumption = []; 

plug.consumption.push({ 
    timestamp: req.param('timestamp'), /* Format: '2016-04-14T16:18:24.972Z' */ 
    value: req.param('value'), /* Format: '6.5' */ 
}); 

plug.save(function (err){ 
    if(err){ 
     res.send("Error"); 
     return next(err); 
    } 
}); 

執行plug.save時不過,帆休息和說Error: Unknown rule: 0

我已經搜索如何存儲sails.js上的對象數組,但沒有找到任何工作。

任何人都可以幫忙嗎?

感謝

consumption使用
+0

我不認爲你的模型的'消耗'屬性中使用的語法是由Waterline支持的。它看起來像是一個具有一對多關係的獨立模型。 – jelhan

+0

Humm ...你確定嗎? –

回答

0

你的語法是錯誤的,或者至少沒有記錄。水線支持屬性類型jsonarrayas documented但您無法爲其定義架構。要定義模式,您必須在模型和消費模型之間使用One-to-Many relationship