Full refactor of codebase
This commit is contained in:
32
src/repository/database.go
Normal file
32
src/repository/database.go
Normal file
@@ -0,0 +1,32 @@
|
||||
package repository
|
||||
|
||||
import (
|
||||
"log"
|
||||
|
||||
"gorm.io/driver/sqlite"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
var db *gorm.DB
|
||||
|
||||
func init() {
|
||||
var err error
|
||||
|
||||
// Open connection to sqlite
|
||||
db, err = gorm.Open(sqlite.Open("qrank.db"), &gorm.Config{})
|
||||
if err != nil {
|
||||
log.Fatal("Sqlite connect:", err)
|
||||
}
|
||||
|
||||
// Migrate the database with gorm
|
||||
if err := db.AutoMigrate(&User{}, &LoginToken{}, &Table{}, &Game{}, &GameUser{}); err != nil {
|
||||
log.Fatal("Migrate:", err)
|
||||
}
|
||||
if err := db.SetupJoinTable(&User{}, "Games", &GameUser{}); err != nil {
|
||||
log.Fatal("Setup jointable:", err)
|
||||
}
|
||||
}
|
||||
|
||||
func GetDB() *gorm.DB {
|
||||
return db
|
||||
}
|
||||
Reference in New Issue
Block a user