使用node.js将数据显示在从mongodb检索到的网页上

时间:2013-06-23 00:43:46

标签: javascript node.js mongodb

继承我的问题。可能有点琐碎。我正在使用node.js来编写一个包含单选按钮,下拉框的表单。我已经能够保存数据并成功检索它,但我无法将其写入网页。将数据写入页面的正确方法是什么

1 个答案:

答案 0 :(得分:6)

你可以用express和mongoose很容易地做到这一点。首先,你将使用mongoose连接到mongoDB,然后设置一些用于与mongoose mongoDB交互的变量(即mongoose.scheme& mongoose.model),最后你只需通过express发送你的mongoDB数据到一个网页res.render功能:

mongoose.connect('mongodb://localhost/test', function(err){
    if(!err){
        console.log('connected to mongoDB');
    } else{
        throw err;
    }
});

var Schema = mongoose.Schema,
    ObjectID = Schema.ObjectID;

var Person = new Schema({
    name : String
});

var Person = mongoose.model('Person', Person);   

app.get('/', function(req, res){
    Person.find({}, function(err, docs){
        res.render('index', { docs: docs});
    });
});

发送数据后,您只需在网页中引用“docs”变量即可。 Express自动使用Jade框架。在Jade中,你可以做一些事情,例如列出数据库中所有人的名字:

- if(docs.length)
    each person in docs
      p #{person.name}
- else
    p No one is in your database!