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学习小结(一)
Jul 06 NodeJs
nodejs npm package.json中文文档
Sep 04 NodeJs
浅析Nodejs npm常用命令
Jun 14 NodeJs
浅谈Nodejs中的作用域问题
Dec 26 NodeJs
Nodejs多站点切换Htpps协议详解及简单实例
Feb 23 NodeJs
ajax +NodeJS 实现图片上传实例
Jun 06 NodeJs
让nodeJS支持ES6的词法----babel的安装和使用方法
Jul 31 NodeJs
Nodejs+angularjs结合multiparty实现多图片上传的示例代码
Sep 29 NodeJs
nodejs实现解析xml字符串为对象的方法示例
Mar 14 NodeJs
NodeJS实现不可逆加密与密码密文保存的方法
Mar 16 NodeJs
用Electron写个带界面的nodejs爬虫的实现方法
Jan 29 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 第二节 数据类型之字符串类型
2012/04/28 PHP
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
PHP之浮点数计算比较以及取整数不准确的解决办法
2015/07/29 PHP
laravel5.2实现区分前后台用户登录的方法
2017/01/11 PHP
JavaScript 解析读取XML文档 实例代码
2009/07/07 Javascript
如何在MVC应用程序中使用Jquery
2014/11/17 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
2014/12/20 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
2015/11/27 Javascript
js实现的鼠标滚轮滚动切换页面效果(类似360默认页面滚动切换效果)
2016/01/27 Javascript
理解javascript异步编程
2016/01/27 Javascript
JS实现太极旋转思路分析
2016/12/09 Javascript
vue-router:嵌套路由的使用方法
2017/02/21 Javascript
bootstrap daterangepicker双日历时间段选择控件详解
2017/06/15 Javascript
使用vue官方提供的模板vue-cli搭建一个helloWorld案例分析
2018/01/16 Javascript
Javascript中弹窗confirm与prompt的区别
2018/10/26 Javascript
微信小程序实现语音识别转文字功能及遇到的坑
2019/08/02 Javascript
详解vue中在循环中使用@mouseenter 和 @mouseleave事件闪烁问题解决方法
2020/04/07 Javascript
javascript+Canvas实现画板功能
2020/06/23 Javascript
Python多线程编程简单介绍
2015/04/13 Python
python使用PyGame绘制图像并保存为图片文件的方法
2015/04/24 Python
python实现自动登录人人网并采集信息的方法
2015/06/28 Python
python实现微信发送邮件关闭电脑功能
2018/02/22 Python
使用python装饰器计算函数运行时间的实例
2018/04/21 Python
selenium+python实现自动登录脚本
2018/04/22 Python
python扫描线填充算法详解
2020/02/19 Python
python实现的分层随机抽样案例
2020/02/25 Python
html5中svg canvas和图片之间相互转化思路代码
2014/01/24 HTML / CSS
社区党员志愿服务活动方案
2014/08/18 职场文书
初中毕业生自我评价
2015/03/02 职场文书
应届生求职自荐信范文
2015/03/04 职场文书
妈妈再爱我一次观后感
2015/06/08 职场文书
祝寿主持词
2015/07/02 职场文书
病房管理制度范本
2015/08/06 职场文书
2016年教师节感言
2015/12/09 职场文书
Java8中接口的新特性使用指南
2021/11/01 Java/Android
Python实现Hash算法
2022/03/18 Python