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 07 NodeJs
nodejs的require模块(文件模块/核心模块)及路径介绍
Jan 14 NodeJs
NodeJS中利用Promise来封装异步函数
Feb 25 NodeJs
Nodejs高扩展性的模板引擎 functmpl简介
Feb 13 NodeJs
详解nodejs中exports和module.exports的区别
Feb 17 NodeJs
NodeJs模拟登陆正方教务
Apr 28 NodeJs
Nodejs--post的公式详解
Apr 29 NodeJs
NodeJS创建最简单的HTTP服务器
May 15 NodeJs
Nodejs回调加超时限制两种实现方法
Jun 09 NodeJs
Nodejs实现文件上传的示例代码
Sep 26 NodeJs
nodejs操作mongodb的增删改查功能实例
Nov 09 NodeJs
Nodejs libuv运行原理详解
Aug 21 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入门
2006/10/09 PHP
PHP中for与foreach的区别分析
2011/03/09 PHP
php实现的农历算法实例
2015/08/11 PHP
PHP按符号截取字符串的指定部分的实现方法
2018/09/10 PHP
PHP二维索引数组的遍历实例分析【2种方式】
2019/06/24 PHP
Laravel timestamps 设置为unix时间戳的方法
2019/10/11 PHP
JavaScript Event学习第四章 传统的事件注册模型
2010/02/07 Javascript
HTTP 304错误的详细讲解
2013/11/13 Javascript
在Node.js中实现文件复制的方法和实例
2014/06/05 Javascript
javascript框架设计读书笔记之模块加载系统
2014/12/02 Javascript
Vue.js绑定HTML class数组语法错误的原因分析
2016/10/19 Javascript
jQuery实现自动调用和触发某个事件的方法
2016/11/18 Javascript
jQuery实现字体颜色渐变效果的方法
2017/03/29 jQuery
详解Vue.js组件可复用性的混合(mixin)方式和自定义指令
2017/09/06 Javascript
highcharts 在angular中的使用示例代码
2017/09/20 Javascript
Angular js 实现添加用户、修改密码、敏感字、下拉菜单的综合操作方法
2017/10/24 Javascript
js中DOM事件绑定分析
2018/03/18 Javascript
Vue.js结合bootstrap前端实现分页和排序效果
2018/12/29 Javascript
微信小程序自定义弹出层效果
2020/05/26 Javascript
Map与WeakMap类型在JavaScript中的使用详解
2020/11/18 Javascript
Python删除空文件和空文件夹的方法
2015/07/14 Python
python 递归遍历文件夹,并打印满足条件的文件路径实例
2017/08/30 Python
用Python实现KNN分类算法
2017/12/22 Python
python3爬虫之设计签名小程序
2018/06/19 Python
python中 * 的用法详解
2019/07/10 Python
flask框架配置mysql数据库操作详解
2019/11/29 Python
python统计文章中单词出现次数实例
2020/02/27 Python
世界著名的顶级牛排:Omaha Steak(奥马哈牛排)
2016/09/20 全球购物
意大利在线大学图书馆:Libreria universitaria
2019/07/16 全球购物
能否解释一下XSS cookie盗窃是什么意思
2012/06/02 面试题
营业经理岗位职责
2013/11/10 职场文书
标准的毕业生自荐信
2014/04/20 职场文书
平安工地汇报材料
2014/08/19 职场文书
客房部经理岗位职责
2015/02/02 职场文书
2015年幼儿园中班工作总结
2015/04/25 职场文书
详细介绍python操作RabbitMq
2022/04/12 Python