1、使用脚手架初始化koa项目 

 1.1 下载脚手架 (cmd命令行)   
npm install -g koa-generator 
    1.2 在当前路径,使用koa-generator生成koa2项目(cmd命令行)
koa2 koa-test-sequelize-auto
    1.3  进入koa-test-sequelize-auto目录(如果没有下载yarn的话,请全局下载yarn。  命令行:  npm  install -g yarn)
yarn install 
    1.4  启动项目
npm run dev
    1.5 通过浏览器查看是否启动成功
        浏览器输入localhost:3000,若出现以下内容,则初始化koa项目成功
NodeJs + koa2 + sequelize-auto + sequelize 搭建项目

2、建立mysql数据库,并创建一些假数据

  2.1  通过navicat工具,新建一个test数据库

  2.2  在test数据库里执行下面这一段sql语句

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for member
-- ----------------------------
DROP TABLE IF EXISTS `member`;
CREATE TABLE `member` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) DEFAULT NULL,
  `sex` tinyint(4) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=17 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of member
-- ----------------------------
INSERT INTO `member` VALUES ('1', 'jacson', '0');
INSERT INTO `member` VALUES ('2', 'jacson', '0');
INSERT INTO `member` VALUES ('3', 'jacson', '0');
INSERT INTO `member` VALUES ('4', 'jacson', '0');
INSERT INTO `member` VALUES ('5', 'jacson', '0');
INSERT INTO `member` VALUES ('6', 'jacson', '0');
INSERT INTO `member` VALUES ('7', 'jacson', '0');
INSERT INTO `member` VALUES ('8', 'jacson', '0');
INSERT INTO `member` VALUES ('9', 'jacson', '0');
INSERT INTO `member` VALUES ('10', 'jacson', '0');
INSERT INTO `member` VALUES ('11', 'jacson', '0');
INSERT INTO `member` VALUES ('12', 'jacson', '0');
INSERT INTO `member` VALUES ('13', 'jacson', '0');
INSERT INTO `member` VALUES ('14', 'jacson', '0');
INSERT INTO `member` VALUES ('15', 'jacson', '0');
INSERT INTO `member` VALUES ('16', 'jacson', '0');

-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` int(11) unsigned zerofill NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('00000000001', '你好', '15');
INSERT INTO `user` VALUES ('00000000002', '我不好', '16');
INSERT INTO `user` VALUES ('00000000003', '他好', '17');
View Code

 

3、建立orm库,并使用

  3.1  在当前项目中安装下面这几个依赖(cmd命令行)

yarn add sequelize
yarn add sequelize-auto
yarn add mysql
yarn add mysql2

  3.2  在当前目录下,新建一个auto.js文件(记住,自己替换database、user、password、port这几个mysql的参数)

  auto.js文件内容如下所示

const SequelizeAuto = require('sequelize-auto')
const auto = new SequelizeAuto(
    'database',     //数据库的库名
    'user',         //mysql数据库的用户名
    'password',     //mysql数据库的密码
    {
        host: '127.0.0.1',      // 数据库服务器ip
        dialect: 'mysql',
        directory: './models',  // prevents the program from writing to disk
        port: '3306',           // 数据库运行端口
        additional: {
            timestamps: false
        }
    }
)
auto.run(function (err) {
    if (err) throw err;
    // console.log(auto.tables); // table list
    // console.log(auto.foreignKeys); // foreign key list

    //生成models表后,直接执行项目
    require('./bin/www');
});
View Code

相关文章: