參考連結
安裝
npm install --save sequelize |
or
yarn add sequelize --save |
以下手動安裝:
npm install --save pg pg-hstore |
or
yarn add pg pg-hstore --save |
Migration
參考官方網站
安裝 Migration CLI
npm install --save sequelize-cli |
or
yarn add sequelize-cli --save |
快速開始
參考官方網站
npx sequelize-cli init |
- 會自動建立以下資料夾:
- config: 連接資料庫的設定
- models: 這個專案 Models 的存放位置
- migrations: Migration 放置處
- seeders: seeds 檔案
- 請把以下的 operationAliases 刪掉
config.json
"development":{ |
建立 migration
參考官方網站
npx sequelize-cli model:generate --name User --attributes firstName:string,lastName:string,email:string |
- name: Model 名稱
- attributes: 欄位屬性
會做以下的事:
- 建立一個 user model
- 在 migration 資料夾,建立一個 migration 檔案,名稱像是 XXXXXXXXXXXXXX-create-user.js
執行 migration
參考官方網站
npx sequelize-cli db:migrate |
取消 migration
參考官方網站
- 取消最新一個 migration
npx sequelize-cli db:migrate:undo |
- 取消全部的 migration, 然後重新 migrate 到指定的檔案
npx sequelize-cli db:migrate:undo:all --to XXXXXXXXXXXXXX-create-posts.js |
變更設定檔位置,名稱
如果:
- 你想要重新定義 migration, models, seeders, 或 config 的資料夾位置
- 你想要重新命名 config.json, 比如說, database.json
那:
建立
.sequelizerc
檔案touch .sequelizerc
範例格式
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')
}
以上的設定會告訴 CLI
- 使用
config/database.json
為設定檔 - 使用 `db/models/ 為 models 的資料夾
- 使用
db/seeders
為 seeders 資料夾 - 使用
db/migrations
為 migration 資料夾
有時我們會需要更改 config 檔案副檔名, 因為我們需要一些 json 無法提供的功能, 例如:
const fs = require('fs'); |
這時我們可以在 .sequelizerc
檔案中修改
const path = require('path'); |
最後別忘了修改 /models/index
中, config
的路徑
在 model 中增加 method
'use strict'; |
使用 async/await
直接 await method 就可
(async () => { |
留言