Files
atom/providers/database/mysql.go
2023-01-30 11:26:20 +08:00

31 lines
507 B
Go

package mysql
import (
"atom/container"
"atom/providers/config"
"database/sql"
"log"
"gorm.io/driver/mysql"
"gorm.io/gorm"
)
func init() {
if err := container.Container.Provide(NewDatabase); err != nil {
log.Fatal(err)
}
}
func NewDatabase(config *config.Config) (*gorm.DB, error) {
sqlDB, err := sql.Open("mysql", config.Database.MySQL.DSN())
if err != nil {
return nil, err
}
gormDB, err := gorm.Open(mysql.New(mysql.Config{
Conn: sqlDB,
}), &gorm.Config{})
return gormDB, err
}