Sequelizeを使用したモデルの作成とデータベース連携


  1. Sequelizeのインストール: まず、プロジェクトのルートディレクトリで以下のコマンドを実行して、Sequelizeをインストールします。
npm install sequelize
npm install sequelize-cli
{
  "development": {
    "username": "your_username",
    "password": "your_password",
    "database": "your_database",
    "host": "localhost",
    "dialect": "mysql"
  },
  "test": {
    ...
  },
  "production": {
    ...
  }
}
  1. モデルの作成: modelsディレクトリを作成し、その中に各テーブルに対応するモデルファイルを作成します。例えば、Userモデルを作成する場合は、user.jsという名前のファイルを作成します。
// user.js
const { Sequelize, DataTypes } = require('sequelize');
const sequelize = new Sequelize('your_database', 'your_username', 'your_password', {
  host: 'localhost',
  dialect: 'mysql'
});
const User = sequelize.define('User', {
  firstName: {
    type: DataTypes.STRING,
    allowNull: false
  },
  lastName: {
    type: DataTypes.STRING,
    allowNull: false
  },
  email: {
    type: DataTypes.STRING,
    allowNull: false,
    unique: true
  }
});
module.exports = User;
  1. マイグレーション: モデルの定義が完了したら、マイグレーションを使用してデータベースにテーブルを作成します。以下のコマンドを実行します。
npx sequelize-cli db:migrate
  1. データベース操作の例: モデルとデータベースが連携した状態で、データベース操作を行うことができます。以下は、ユーザーの作成と取得の例です。
const User = require('./models/user');
// ユーザーの作成
User.create({
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]'
}).then(user => {
  console.log(user.toJSON());
}).catch(err => {
  console.error('Error creating user:', err);
});
// ユーザーの取得
User.findAll().then(users => {
  console.log(users);
}).catch(err => {
  console.error('Error retrieving users:', err);
});

これで、Sequelizeを使用してモデルの作成とデータベース連携ができるようになりました。独自のモデルとデータベースの操作を実装するために、Sequelizeのドキュメントを参照することをおすすめします。