Cara membuat Http Server di Golang part 4

Dalam kasus ini, kita akan membuat migrasi menggunakan package "github.com/subosito/gotenv" untuk mengelola variabel lingkungan dari file .env. Berikut adalah struktur proyek yang sesuai dengan persyaratan yang telah Anda tentukan:

project-folder/
  ├── go.mod
  ├── main.go
  ├── .env
  └── src
      └── Config
           └── db.go
      └── Controllers
           └── products.go
      └── Models
           └── products.go
      └── helper
           └── migration.go
  1. Membuat Migration di helper/migration.go:

package helper

import (
	"github.com/jinzhu/gorm"
	"github.com/subosito/gotenv"
	"os"
	"project-folder/src/Config"
	"project-folder/src/Models"
)

func LoadEnv() {
	err := gotenv.Load(".env")
	if err != nil {
		panic("Error loading .env file")
	}
}

func MigrateDatabase() {
	Config.DB.AutoMigrate(&Models.Product{})
}
  1. Ubah main.go untuk Memanggil Migration dan Load Env:

  1. Ubah Config/db.go untuk Mengambil Data dari .env:

  1. Tambahkan Variabel Lingkungan ke .env File:

Dengan langkah-langkah ini, proyek Anda sekarang memanfaatkan package "github.com/subosito/gotenv" untuk mengelola variabel lingkungan dari file .env dan menggunakan file helper/migration.go untuk melakukan migrasi basis data. Pastikan Anda telah menginstal package "github.com/subosito/gotenv" menggunakan perintah go get github.com/subosito/gotenv sebelum menjalankan aplikasi Anda.

Last updated