2012-08-13 31 views
0

我正在使用Node.js,express,mongodb,并在前端和后端之间传递的数据卡住了。如何从node.js中的mongodb中推送请求的数据

注意:下面的代码是前端和后端的通信中间件代码

在这里,我成功地用req.body.nr

exports.find_user_post = function(req, res) { 
    member = new memberModel(); 
    member.desc = req.body.nr; 
    console.log(req.body.nr); 
    member.save(function (err) { 
     res.render('user.jade',); 
    }); 
}; 

这里的问题是获得从前端的输入值,我需要使用输入值我得到从我的数据库(后端mongodb)找到正确的数据并推送到前端。

我的数据结构{desc : ''},desc对应于输入值,所以它应该看起来像这样{desc: req.body.nr}这可能是不正确的代码在这里?

exports.user = function(req, res){ 
    memberModel.find({desc: req.body.nr}, function(err, docs){ 
     res.render('user.jade', { members: docs }); 

    }); 
}; 

希望能有一些帮助。

谢谢,提前!

回答

1

看看这个伟大的tutorial从howtonode.org。

因为你可以看到他使用的原型和回调函数:


articleprovider-mongodb.js

ArticleProvider.prototype.findAll = function(callback) { 
    this.getCollection(function(error, article_collection) { 
     if(error) callback(error) 
     else { 
     article_collection.find().toArray(function(error, results) { 
      if(error) callback(error) 
      else callback(null, results) 
     }); 
     } 
    }); 
}; 

exports.ArticleProvider = ArticleProvider; 

app.js

app.get('/', function(req, res){ 
    articleProvider.findAll(function(error,docs){ 
     res.render('index.jade', { 
      locals: { 
       title: 'Blog', 
       articles:docs 
      } 
     }); 
    }) 
}); 

而且马可以肯定的是你有一些错误检查从用户输入以及任何人发送数据到node.js服务器。

PS:请注意,本教程中使用的节点,express和mongo驱动程序稍旧。

相关问题