在egg中配置 sequelize

如何在eggjs中引入 sequlize

安装

  • 第一步,在项目中安装 egg-sequelize插件和mysql插件
npm install --save egg-sequelize mysql2
  • 第二步,在config/plugin.js中开启 egg-sequelize插件,插入以下代码
exports.sequelize = {
  enable: true,
  package: 'egg-sequelize',
};

  • 第三步,在config/config.default.js 中填写数据库链接配置信息
config.sequelize = {
        dialect: 'mysql', //数据库类型
        database: 'abc' , //数据库名称
        host: '127.0.0.1', //数据库ip地址
        port: '3306',      //数据库端口
        username: 'root',   //数据库用户名
        password: 'root'   //数据库密码
    } 
    

定义 model

  1. 在项目根目录下新建 models文件夹放置 model文件
  2. 在model下新建以文件表名称命名的 js文件,比如user表 就建立一个 user.js
// user.js 的代码

'use strict';

module.exports = app => {
  const { STRING, INTEGER } = app.Sequelize; //获取 sequelize对应的数据类型映射
  // 1.3 https://itbilu.com/nodejs/npm/V1PExztfb.html   中有更详细的数据类型
  
  const User = app.model.define('user', {
    uid: {
      type: INTEGER,
      primaryKey: true, // 主键
    },
    uname: STRING,
    upwd: STRING,
    add_time: INTEGER,
  },{
    //freezeTableName默认值是 false 如果是false的话,会自动在表名后加s复数
    freezeTableName: true,
    //timestamps默认值是true,如实是true会自动添加上 create_time 和update_time两个字段
    timestamps: false ,
  });

  return User;

};

posted @ 2019-08-03 16:05  dobeco  阅读(3148)  评论(0编辑  收藏  举报