我无法让Mongoose保存我的数据。我希望每次发出新事件时都保存到数据库中。
//Capture data from socket into schema
io.sockets.on('connection', function (socket) {
socket.emit('news', { hello: 'world' });
socket.on('slog', function (data) {
story.lines.push ({ author: 'Khuram', text: data.my}, function (){
story.save(function(err){
//save line
if (err) {throw err; }
console.log('saved story line');
});
});
});
});
答案 0 :(得分:0)
根据此页面:http://mongoosejs.com/docs/embedded-documents.html
也许你可以试试:
story.lines.push ({ author: 'Khuram', text: data.my});
story.save(function(err){
//save line
if (err) {throw err; }
console.log('saved story line');
});
最终,似乎push方法可能不支持像你试图传递的匿名函数那样的回调。
参考:https://github.com/LearnBoost/mongoose/blob/master/lib/types/array.js