Cara Install Sequelize ORM Pada Project Node.js

date 13 Nov 2021
date Sulfikardi
date 54
date Web Programming
Cara Install  Sequelize ORM  Pada Project Node.js

ORM merupakan suatu metode/teknik yang digunakan untuk mengkonversi data dari lingkungan bahasa pemrograman berorientasi objek (OOP) dengan lingkungan database relasional, ORM bertugas sebagai penghubung dan sekaligus mempermudah kita dalam membuat aplikasi yang menggunakan database relasional agar menjadikan tugas kita lebih efisien. Sequelize merupakan node.js promise-based ORM (Object Relational Mapping) untuk PostgreSQL, MySQL, MariaDB, SQLite, dan Microsoft SQL Server. Sequelize  didukung berbagai macam fitur seperti transaction, relations, eager and lazy loading, read replication dan masih banyak lagi.

Setup Sequelize

init Node.js project dengan kode berikut

npm init -y

install package yang diperlukan seperti express, cors, dan database package misal mysql2

npm install --save express cors mysql2 

kemudian install suquelize package dengan kode berikut

npm install sequelize --save 

kita juga perlu menginstall sequelize-cli untuk melakukan eksekusi perintah sequelize menggunakan terminal

npm install --save-dev sequelize-cli 

selanjutnya kita buat bootstraping project menggunakan perintah berikut

npx sequelize-cli init 

secara default setelah kita melakukan init sequelize akan membuat folder config, migrations, models, dan seeders

kita telah selesai melakukan setup pada sequelize, selanjutnya kita perlu melakukan konfigurasi koneksi pada database

silahkan buka file pada direktori config/config.json

{

  "development": {

    "username": "root",

    "password": null,

    "database": "database_development",

    "host": "127.0.0.1",

    "dialect": "mysql"

  },

  "test": {

    "username": "root",

    "password": null,

    "database": "database_test",

    "host": "127.0.0.1",

    "dialect": "mysql"

  },

  "production": {

    "username": "root",

    "password": null,

    "database": "database_production",

    "host": "127.0.0.1",

    "dialect": "mysql"

  }

}

secara default, config yang digunakan adalah development, kita dapat mengubahnya dengan menabhakna file .env NODE_ENV jika kita ingin menggunakannya pada production ataupun test.

pada object development, silahkan sesuaikan username, password dan database sesuai pengaturan database yagn kita gunakan.

Membuat Model Dan Migration

kita dapat menggunakan sequelize-cli untuk membuat model dan migration

npx sequelize-cli model:generate --name User --attributes firstName:string,lastName:string,email:string

 secara otomatis sequelize akan membuat model baru pada folder models/nama-models sesuai yang kita generate

'use strict';

const {

  Model

} = require('sequelize');

module.exports = (sequelize, DataTypes) => {

  class User extends Model {

    /**

     * Helper method for defining associations.

     * This method is not a part of Sequelize lifecycle.

     * The `models/index` file will call this method automatically.

     */

    static associate(models) {

      // define association here

    }

  };

  User.init({

    firstName: DataTypes.STRING,

    lastName: DataTypes.STRING,

    email: DataTypes.STRING

  }, {

    sequelize,

    modelName: 'User',

  });

  return User;

};

selanjutnya kita dapat menjalankan perintah migration untuk melakukan migrasi table ke database

npx sequelize-cli db:migrate 
sul.png

Sulfikardi

Web Design & Web Programming

Halo, saya seorang Web Developer yang terbiasa mengembangkan website menggunakan HTML, CSS, Javascript, PHP, MYSQL, dan Laravel. Disini saya akan membagikan pengalaman saya dalam membangun dan mengembangan website yang responsif dan dinamis

Artikel Terkait

Halo, ada yang bisa kami bantu?