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 Post请求报socket hang up错误的解决办法
Sep 25 NodeJs
nodejs开发环境配置与使用
Nov 17 NodeJs
nodejs中操作mysql数据库示例
Dec 20 NodeJs
nodejs微信公众号支付开发
Sep 19 NodeJs
Nodejs中解决cluster模块的多进程如何共享数据问题
Nov 10 NodeJs
NodeJS父进程与子进程资源共享原理与实现方法
Mar 16 NodeJs
nodejs 如何手动实现服务器
Aug 20 NodeJs
NodeJs 文件系统操作模块fs使用方法详解
Nov 26 NodeJs
nodejs实现获取本地文件夹下图片信息功能示例
Jun 22 NodeJs
独立部署小程序基于nodejs的服务器过程详解
Jun 24 NodeJs
详解利用nodejs对本地json文件进行增删改查
Sep 20 NodeJs
Nodejs监控事件循环异常示例详解
Sep 22 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
经典的星际争霸,满是回忆的BGM
2020/04/09 星际争霸
常用的php ADODB使用方法集锦
2008/03/25 PHP
php中几种常见安全设置详解
2010/04/06 PHP
ThinkPHP令牌验证实例
2014/06/18 PHP
PHP获取MySql新增记录ID值的3种方法
2014/06/24 PHP
laravel 5 实现模板主题功能(续)
2015/03/02 PHP
Yii安装与使用Excel扩展的方法
2016/07/13 PHP
使用jquery与图片美化checkbox和radio控件的代码(打包下载)
2010/11/11 Javascript
基于jquery点击自以外任意处,关闭自身的代码
2012/02/10 Javascript
event.currentTarget与event.target的区别介绍
2012/12/31 Javascript
jQuery如何防止这种冒泡事件发生
2015/02/27 Javascript
jQuery获得document和window对象宽度和高度的方法
2015/03/25 Javascript
JavaScript数据类型学习笔记
2016/01/25 Javascript
Vue响应式原理详解
2017/04/18 Javascript
微信小程序获取手机系统信息的方法【附源码下载】
2017/12/07 Javascript
vue+axios+mock.js环境搭建的方法步骤
2018/08/28 Javascript
通过npm或yarn自动生成vue组件的方法示例
2019/02/12 Javascript
Node.js从字符串生成文件流的实现方法
2019/08/18 Javascript
Python中的字符串操作和编码Unicode详解
2017/01/18 Python
Python基于贪心算法解决背包问题示例
2017/11/27 Python
Python断言assert的用法代码解析
2018/02/03 Python
python3.X 抓取火车票信息【修正版】
2018/06/19 Python
详解Python安装scrapy的正确姿势
2018/06/26 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/26 Python
python操作excel的方法
2018/08/16 Python
springboot配置文件抽离 git管理统 配置中心详解
2019/09/02 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
护理助产毕业生的求职信
2014/03/02 职场文书
人事专员岗位职责说明书
2014/07/30 职场文书
七一讲话心得体会
2014/09/05 职场文书
公证处委托书
2015/01/28 职场文书
烈士陵园观后感
2015/06/08 职场文书
安全守法证明
2015/06/23 职场文书
2016年圣诞节寄语(一句话)
2015/12/07 职场文书
Spring Data JPA框架的核心概念和Repository接口
2022/04/28 Java/Android
win10识别不了U盘怎么办 win10系统读取U盘失败的解决办法
2022/08/05 数码科技