Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Mongoose-数据未保存到数据库_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js Mongoose-数据未保存到数据库

Node.js Mongoose-数据未保存到数据库,node.js,mongodb,mongoose,Node.js,Mongodb,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',

我无法让猫鼬保存我的数据。我想在每次发出新事件时保存到数据库中

//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');
            });
        });
    });
});
根据本页:

也许你可以试试:

story.lines.push ({ author: 'Khuram', text: data.my});
story.save(function(err){
            //save line
            if (err) {throw err; }
            console.log('saved story line');
 });
最终,push方法似乎不支持像您尝试传递的匿名函数那样的回调


参考资料:

什么是slog事件?这是您希望让mongoose进行更新的事件吗?你能证实它确实被发射了吗?这将有助于澄清您对mongoose的呼叫或事件处理代码是否存在问题。是的,这是我希望mongoose更新的事件。我已经独立测试了我的socket.io代码,可以确认它已启动。mongoose使用staric数据进行更新,这是push和no socket.io的一部分。我只是觉得我没有正确地合并这两个函数或其他什么?我最初就是这样做的,但这样做,它不会等待接收套接字数据并继续保存。我想在每次传输数据时保存数据。有什么想法吗?只是玩了一会儿而已。这似乎是一个与Socket.io有关的问题,而不是mongoose,但目前还不确定具体是什么问题。我只是试着用一些静态值来推送socket.on,但它不起作用。