I'm not very familiar with javascript, and stunning, because i can't add new property, to object, that fetched from database using ORM names Sequelize.js.
To avoid this, i use this 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); }); So, what normally way to add new properties to object.
If it can help, i use sequelize-postgres version 2.0.x.
upd. console.log(node):
{ 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: 'createdAt', updatedAt: 'updatedAt', deletedAt: 'deletedAt', touchedAt: 'touchedAt', instanceMethods: {}, classMethods: {}, validate: {}, freezeTableName: false, underscored: false, syncOnAssociation: true, paranoid: false, whereCollection: { farmid: 5, networkid: 'NetworkId' }, schema: null, schemaDelimiter: '', language: 'en', defaultScope: null, scopes: null, hooks: { beforeCreate: [], afterCreate: [] }, omitNull: false, hasPrimaryKeys: false }, hasPrimaryKeys: false, selectedValues: { nodeid: 'NodeId', name: 'NameHere', longname: '', latitude: 30, longitude: -110, 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), altname: 'Test9' }, __eagerlyLoadedAssociations: [], isDirty: false, isNewRecord: false, daoFactoryName: 'Nodes', daoFactory: { options: { timestamps: true, createdAt: 'createdAt', updatedAt: 'updatedAt', deletedAt: 'deletedAt', touchedAt: 'touchedAt', instanceMethods: {}, classMethods: {}, validate: {}, freezeTableName: false, underscored: false, syncOnAssociation: true, paranoid: false, whereCollection: [Object], schema: null, schemaDelimiter: '', language: 'en', defaultScope: null, scopes: null, hooks: [Object], omitNull: false, hasPrimaryKeys: false }, name: 'Nodes', tableName: 'Nodes', rawAttributes: { nodeid: [Object], name: [Object], altname: [Object], longname: [Object], latitude: [Object], longitude: [Object], networkid: [Object], farmid: [Object], lastheard: [Object], id: [Object], createdAt: [Object], updatedAt: [Object] }, daoFactoryManager: { daos: [Object], sequelize: [Object] }, associations: {}, scopeObj: {}, primaryKeys: {}, primaryKeyCount: 0, hasPrimaryKeys: false, autoIncrementField: 'id', DAO: { [Function] super_: [Function] } } } I think next, what you think will be: "Ok, that is easy, just add your property to dataValues."
node.selectedValues.sensors = sensors; node.dataValues.sensors = sensors; I add this lines, and this don't work
