nodejs个人博客开发第四步 数据模型


Posted in NodeJs onApril 12, 2017

本文为大家分享了nodejs个人博客开发的数据模型,具体内容如下

数据库模型

/model/db.js 数据库操作类,完成链接数据库和数据库的增删查改

查询表

/*查询*/ 
 select:function(tableName,callback,where,field){
  field=field ? field : '*';
  var sql="select "+field+" from "+this.C.DB_PRE+tableName;
  if(where){
   sql+=" where "+where;
  }
  this.db.query(sql,callback);
 }

添加记录

/*添加*/
 add:function(tableName,tableData,callback){
   var sql="insert into "+this.C.DB_PRE+tableName;
   var clumn='';
   var value='';
   for(var key in tableData){
    clumn+=","+key;
    value+=",'"+tableData[key]+"'";
   }
   clumns="("+clumn.substr(1)+")";
  values="("+value.substr(1)+")";
  sql=sql+clumns+"values"+values;
  console.log(sql);
  this.db.query(sql,callback);  
 }

修改记录

/*修改*/
 update:function(tableName,tableData,where,callback){
   var sql="update "+this.C.DB_PRE+tableName+" set ";
   var clumns="";
   for(var key in tableData){
    clumns+=","+key+"='"+tableData[key]+"'";
   }
  clumns=clumns.substr(1);

  sql+=clumns+" where "+where;
  console.log(sql);
  this.db.query(sql,callback);  
 }

删除记录

/*删除*/
 delete:function(tableName,where,callback){
   var sql="delete from "+this.C.DB_PRE+tableName+" where "+where;
  console.log(sql);
  this.db.query(sql,callback);  
 }

业务模型

例如分类模型,/model/category.js

/**
*分类模型
*
*/
module.exports={
 getAllList:function(){
  db.select("category",function(err,list){
   console.log(list);
  });
 },
 /*添加*/
 addCate:function(data){
  db.add("category",data,function(err,list){
   console.log(err);
  });
 },
 /*修改*/
 saveCate:function(data,where){
  db.update("category",data,where,function(err,list){
   console.log(err);
  });
 },
 /*删除*/
 delCate:function(where){
  db.delete("category",where,function(err,list){
   //console.log(err);
  });
 }
};

控制器

先在公共函数文件增加一个调用模型的方法

/*实例化模型*/
 model:function(name){
  return require("../model/"+name);
 }

控制器调用业务模型

/**
* 首页控制器
*/
var router=express.Router();
router.get('/',function(req,res,next){
 F.model("category").getAllList();
 //F.model("category").addCate({"name":"测试"});
 //F.model("category").saveCate({"name":"测试1"},"id=4");
 //F.model("category").delCate("id=4");
 /*渲染模板*/
 res.render("home/index");
});
module.exports=router;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
nodejs 后缀名判断限制代码
Mar 31 NodeJs
Ubuntu中搭建Nodejs开发环境过程分享
Jun 01 NodeJs
抛弃Nginx使用nodejs做反向代理服务器
Jul 17 NodeJs
nodejs实现HTTPS发起POST请求
Apr 23 NodeJs
浅谈NodeJS中require路径问题
May 07 NodeJs
Nodejs进阶:核心模块net入门学习与实例讲解
Nov 21 NodeJs
NodeJS仿WebApi路由示例
Feb 28 NodeJs
nodejs爬虫遇到的乱码问题汇总
Apr 07 NodeJs
NodeJs的fs读写删除移动监听
Apr 28 NodeJs
nodejs+mongodb aggregate级联查询操作示例
Mar 17 NodeJs
nodejs搭建本地服务器并访问文件操作示例
May 11 NodeJs
NodeJs crypto加密制作token的实现代码
Nov 15 NodeJs
nodejs个人博客开发第三步 载入页面
Apr 12 #NodeJs
nodejs个人博客开发第二步 入口文件
Apr 12 #NodeJs
nodejs个人博客开发第一步 准备工作
Apr 12 #NodeJs
nodejs获取微信小程序带参数二维码实现代码
Apr 12 #NodeJs
详解nodejs微信公众号开发——5.素材管理接口
Apr 11 #NodeJs
详解nodejs微信公众号开发——4.自动回复各种消息
Apr 11 #NodeJs
nodejs连接mysql数据库简单封装示例-mysql模块
Apr 10 #NodeJs
You might like
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
2013/06/24 PHP
PHP调用VC编写的COM组件实例
2014/03/29 PHP
根据分辨率不同,调用不同的css文件
2006/08/25 Javascript
javascript 页面划词搜索JS
2009/09/28 Javascript
学习并汇集javascript匿名函数
2010/11/25 Javascript
jQuery 联动日历实现代码
2012/05/31 Javascript
写得不错的jquery table鼠标经过变色代码
2013/09/27 Javascript
jquery实现更改表格行顺序示例
2014/04/30 Javascript
JavaScript中的object转换成number或string规则介绍
2014/12/31 Javascript
深入理解JavaScript系列(27):设计模式之建造者模式详解
2015/03/03 Javascript
jQuery+PHP星级评分实现方法
2015/10/02 Javascript
js判断当前页面在移动设备还是在PC端中打开
2016/01/06 Javascript
JS中frameset框架弹出层实例代码
2016/04/01 Javascript
jQuery Mobile操作HTML5的常用函数总结
2016/05/17 Javascript
JavaScript事件学习小结(一)事件流
2016/06/09 Javascript
ionic中列表项增加和删除的实现方法
2017/01/22 Javascript
JS将unicode码转中文方法
2017/05/08 Javascript
angular 内存溢出的问题解决
2018/07/12 Javascript
在vue项目中正确使用iconfont的方法
2018/09/28 Javascript
浅谈Vue使用Cascader级联选择器数据回显中的坑
2020/10/31 Javascript
前端如何实现动画过渡效果
2021/02/05 Javascript
python 文件与目录操作
2008/12/24 Python
浅析AST抽象语法树及Python代码实现
2016/06/06 Python
Python中的数学运算操作符使用进阶
2016/06/20 Python
Python 递归函数详解及实例
2016/12/27 Python
python自动化工具之pywinauto实例详解
2019/08/26 Python
Python实现微信表情包炸群功能
2021/01/28 Python
CSS3教程(9):设置RGB颜色
2009/04/02 HTML / CSS
波兰电子产品购物网站:Vobis
2019/05/26 全球购物
澳大利亚优惠网站:Deals.com.au
2019/07/02 全球购物
社团活动策划书范文
2014/01/09 职场文书
贯彻学习两会心得体会范文
2014/03/17 职场文书
马智宇婚礼主持词
2014/03/22 职场文书
课外活动实习计划
2015/01/19 职场文书
公务员廉洁从政心得体会
2016/01/19 职场文书
2016年党员公开承诺书格式范文
2016/03/24 职场文书