express 获取数据后渲染

来源:互联网 发布:在线报名系统源码 编辑:程序博客网 时间:2024/06/05 08:00

一、简洁版

//db.jsvar mysql = require('mysql');exports.createConn = function(options){    var client = mysql.createConnection(options);    return client;};exports.getUsers = function (client,callback){    var selectstatement = 'select * from books';    client.query(selectstatement,function(errs,rows,fields){        if(errs){            console.log(111222333)            callback(errs);        }        if(rows){            console.log(112233)            //console.log(rows);            callback(rows);        }    })};exports.end=function(client){    client.end(function(err){        if(err)  return;    });};
//database-default.jsmodule.exports = {    mysql: {        host: '127.0.0.1',        user: 'root',        password: '',        database:'write_app',        //port: 3306    }}
//user.jsvar express = require('express');var router = express.Router();var options = require('../config/database-default')var db = require('../config/db.js');//请求作者页router.route('/user/index').get(function(req,res,next){    console.log(req.session.user);    if(req.session.user){        res.render('user',{title:'作者管理'});    }else{        req.session.originalUrl = req.originalUrl?req.originalUrl:null;//记录用户的请求路径        console.log(req.session.originalUrl);        res.redirect('/login');    }}).post(function(req,res){    var mes;    console.log(options.mysql);    var client = db.createConn(options.mysql);    db.getUsers(client,function(res){        res.render('index',{results:res});//渲染index模板,并传递res数据    });    }
//index.ejs<ul>    <% for(var i=0; i<result.length; i++) { %>        <li><%=result[i].comment %></li>    <% } %></ul>

二、使用pool连接池

var mysql = require('mysql'); var pool = mysql.createPool{        host: '127.0.0.1',        user: 'root',        password: '',        database:'write_app',        //port: 3306};pool.on('connection',function(connection){    connection.qurey('SET SESSION auto_increment_increment=1')});pool.getConnection(function(err,connection){    pool.query('SELECT * form books',function(err,res){            if(err) throw err;            res.render('index',{result:res});//渲染index模板,并传递res数据            connection.release();//会把连接放回连接池,等待其它使用者使用!    })});pool.end(function(err){    if(err) return;})
//index.ejs<ul>    <% for(var i=0; i<result.length; i++) { %>        <li><%=result[i].comment %></li>    <% } %></ul>
0 0
原创粉丝点击