sequelize
中文文档地址
https://github.com/demopark/sequelize-docs-Zh-CN
基础使用
创建项目
1.init
npm init -y
2.导入包
cnpm i -S sequelize mysql2 sequelize-cli
3.编写配置文件
(1)新建 `.sequelizerc`文件
(2)输入内容
```
const path = require('path');
module.exports = {
'config': path.resolve('config', 'database.json'),
'models-path': path.resolve('db', 'models'),
'seeders-path': path.resolve('db', 'seeders'),
'migrations-path': path.resolve('db', 'migrations')
}
```
(3)初始化创建db环境
```
./node_modules/.bin/sequelize init
```
会生成db目录,和config目录,修改config文件下的数据库配置为自己的数据库配置。
创建数据库
npx sequelize-cli db:create
或者
./node_modules/.bin/sequelize db:create
(1)脑袋一拍写到 package.json
文件中试试
"scripts": {
"createDatabase": "./node_modules/.bin/sequelize db:create"
},
运行 `npm run createDatabase`成功创建(后面的例子也都一样)
创建模型
我们将使用 model:generate 命令。 此命令需要两个选项:
- name, 模型的名称
- attributes, 模型的属性列表
试一试创建一个用户User模型和一个Role模型
./node_modules/.bin/sequelize model:generate --name User --attributes firstName:string,lastName:string,email:string
./node_modules/.bin/sequelize model:generate --name Role --attributes roleName:string
运行迁移(把刚创建的模型结构放到数据库中)
(1)运行迁移
./node_modules/.bin/sequelize db:migrate
(2)撤销上一个迁移
./node_modules/.bin/sequelize db:migrate:undo
(3)撤销所有迁移
./node_modules/.bin/sequelize db:migrate:undo:all
TIP 运行后的迁移不撤销好像没办法重复运行
种子文件与测试数据
(1)生成种子文件
./node_modules/.bin/sequelize seed:generate --name demo-role
./node_modules/.bin/sequelize seed:generate --name demo-user
(2)插入数据库
./node_modules/.bin/sequelize db:seed:all
本文创建时间
2019年6月18日16:23:30