initial commit

This commit is contained in:
2025-08-27 23:26:36 +03:00
commit ae70c229f7
22 changed files with 1087 additions and 0 deletions

51
database/database.go Normal file
View File

@@ -0,0 +1,51 @@
package database
import (
"encoding/json"
"fmt"
"io"
"log"
"os"
"gorm.io/driver/postgres"
"gorm.io/gorm"
)
type config struct {
Host string `json:"host"`
User string `json:"user"`
Password string `json:"password"`
Database string `json:"database"`
}
var Database *gorm.DB
var conf *config
func loadConfig() {
file, err := os.Open("./config.json")
if err != nil {
log.Fatalln(err)
}
data, err := io.ReadAll(file)
if err != nil {
log.Fatalln(err)
}
conf = new(config)
err = json.Unmarshal(data, conf)
if err != nil {
log.Fatalln(err)
}
}
func getDSN() string {
return fmt.Sprintf("postgresql://%s:%s@%s/%s?sslmode=disable", conf.User, conf.Password, conf.Host, conf.Database)
}
func Connect() {
var err error
loadConfig()
Database, err = gorm.Open(postgres.Open(getDSN()), new(gorm.Config))
if err != nil {
log.Fatalln(err)
}
}