egg 集成 Sequelize (五)

  Sequelize是一个广泛使用的 ORM 框架,它支持 MySQL、PostgreSQL、SQLite 和 MSSQL 等多个数据源。

1. 安装:

npm install --save egg-sequelize;

2. 在 config/plugin.js 中引入 egg-sequelize 插件

3. 在 config/config.default.js 中编写 sequelize 配置,(此处查看其它配置GitHub - eggjs/egg-sequelize: Sequelize for Egg.js

4. 初始化数据库和 Migrations

开始设计 users 表,它有如下的数据结构:

sequelize 提供了 sequelize-cli 工具来实现 Migrations,我们也可以在 egg 项目中引入 sequelize-cli。

安装 sequelize-cli:

npm install --save-dev sequelize-cli

在 egg 项目中,我们希望将所有数据库 Migrations 相关的内容都放在 database 目录下,所以我们在项目根目录下新建一个 .sequelizerc 配置文件:

'use strict';

const path = require('path');

module.exports = {

"config": path.join(__dirname, 'database/config.json'),

"migrations-path": path.join(__dirname, 'database/migrations'),

"seeders-path": path.join(__dirname, 'database/seeders'),

"models-path": path.join(__dirname, 'app/model'),

};

5. 初始化 Migrations 配置文件和目录

npx sequelize init:config
npx sequelize init:migrations

执行完后会生成 database/config.json 文件和 database/migrations 目录,修改一下 database/config.json 中的内容,将其改成使用的数据库配置。

此时 sequelize-cli 和相关的配置也都初始化好了,可以开始编写项目的第一个 Migration 文件来创建我们的一个 users 表了。

npx sequelize migration:generate --name=init-users

执行完后会在 database/migrations 目录下生成一个 migration 文件(${timestamp}-init-users.js),修改它来处理初始化 users 表:

6. 执行 migrate 进行数据库变更

# 升级数据库

npx sequelize db:migrate

7. 编写代码

现在可以开始编写代码实现业务逻辑了。首先在 app/model/ 目录下编写 user 这个 Model:

这个 Model 就可以在 Controller 和 Service 中通过 app.model.User 或者 ctx.model.User 访问到了。其余model接口访问Getting Started | Sequelize

特别注意:框架表名自动复数,加上会使用snake_case会使列名改变。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值