node之mongo取到数据渲染到html上

使用的是ejs

/**
 1.npm install mongodb --save-dev / cnpm install mongodb --save-dev

 2.var MongoClient = require('mongodb').MongoClient;

 var url = 'mongodb://localhost:27017/test';   连接数据库的地址

 3.连接数据库

 MongoClient.connect(url, function(err, db) {

});

 4.实现增加修改删除

 MongoClient.connect(url, function(err, db) {

    db.collection('user').insertOne({'name':'zhangsan'},function(error,data){




    })

});





 */
var http=require('http');

var ejs=require('ejs');

var MongoClient = require('mongodb').MongoClient;

var DBurl = 'mongodb://localhost:27017/itying';



var app=require('./model/express-route.js');

http.createServer(app).listen(3000);

app.get('/',function(req,res){



    MongoClient.connect(DBurl,function(err,db){
        if(err){

            console.log('连接数据库失败');
            return;
        }

        //查询数据
        var list=[];  /*放数据库里面查询的所有数据*/

        var result=db.collection('user').find({});


        result.each(function(error,doc){


            //console.log(doc);
                if(error){
                    console.log(error);
                }else{

                    if(doc!=null){
                        list.push(doc);

                    }else{  /*doc==null表示数据循环完成*/

                        /*获取数据以后*/
                        //console.log(list);

                        ejs.renderFile('views/index.ejs',{list:list},function(err,data){

                            res.send(data);
                        })

                    }

                }

        })

        //console.log(result);

    })

})

app.get('/add',function(req,res){

    MongoClient.connect(DBurl,function(err,db){

        if(err){

            console.log('连接数据库失败');
            return;
        }

        db.collection('user').insertOne({"name":'lisi',"age":40},function(error,data){

            if(error){
                console.log('增加数据失败');
                return;
            }
            console.log(data);

            res.send('增加数据成功');

            db.close();

        })


    })
})

app和上篇文章一样

下面附录上ejs

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <title></title>
</head>
<body>

    <ul>

        <%for(var i=0;i<list.length;i++){%>
            <li><%=list[i].name%></li>
        <%}%>
    </ul>


</body>
</html>

 

posted on 2018-02-22 22:04  另一种失败 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/qiaohong/p/8460289.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值