Files
astra-events/main.go
2023-07-14 14:54:41 +03:00

47 lines
1.1 KiB
Go

package main
import (
"astra-events/config"
"astra-events/handler"
"astra-events/model"
"github.com/labstack/echo/v4"
"github.com/labstack/echo/v4/middleware"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
"gorm.io/gorm/logger"
"log"
"os"
"time"
)
func main() {
newLogger := logger.New(
log.New(os.Stdout, "\r\n", log.LstdFlags), // io writer
logger.Config{
SlowThreshold: time.Second, // Slow SQL threshold
LogLevel: logger.Info, // Log level
IgnoreRecordNotFoundError: true, // Ignore ErrRecordNotFound error for logger
ParameterizedQueries: true, // Don't include params in the SQL log
Colorful: false, // Disable color
},
)
db, err := gorm.Open(sqlite.Open(config.Env.Server.ConnectionString), &gorm.Config{
Logger: newLogger,
})
if err != nil {
panic("failed to connect database")
}
e := echo.New()
e.Use(middleware.Logger())
db.AutoMigrate(&model.Event{}, &model.EventsServices{})
var h = &handler.Handler{DB: db}
e.POST("/", h.CreateEvent)
e.Logger.Fatal(e.Start(":" + config.Env.Server.Port))
}