我对javascript并不是很熟悉,并且令人惊叹,因为我无法使用ORM名称Sequelize.js从数据库中添加新属性到对象.
为了避免这种情况,我使用这个hack:
db.Sensors.findAll({
where: {
nodeid: node.nodeid
}
}).success(function (sensors) {
var nodedata = JSON.parse(JSON.stringify(node)); // this is my trick
nodedata.sensors = sensors;
nodesensors.push(nodedata);
response.json(nodesensors);
});
Run Code Online (Sandbox Code Playgroud)
那么,通常的方法是向对象添加新属性.
如果它可以帮助,我使用sequelize-postgres版本2.0.x.
UPD.的console.log(节点):
{ dataValues:
{ nodeid: 'NodeId',
name: 'NameHere',
altname: 'Test9',
longname: '',
latitude: 30,
longitude: -10,
networkid: 'NetworkId',
farmid: '5',
lastheard: Mon Dec 09 2013 04:04:40 GMT+0300 (FET),
id: 9,
createdAt: Tue Dec 03 2013 01:29:09 GMT+0300 (FET),
updatedAt: Sun Feb 23 2014 01:07:14 GMT+0300 (FET) },
__options:
{ timestamps: true,
createdAt: …
Run Code Online (Sandbox Code Playgroud)