package main import ( "log/slog" "os" "git.kocoder.xyz/kocoded/vt/model" "github.com/joho/godotenv" "gorm.io/driver/postgres" "gorm.io/gen" "gorm.io/gorm" ) func main() { err := godotenv.Load() if err != nil { slog.Error("Error Loading Environment variables! ", "error", err) } db, err := gorm.Open(postgres.Open(os.Getenv("DB_DSN")), &gorm.Config{}) if err != nil { slog.Error("Error connecting to the Database", "error", err) } g := gen.NewGenerator(gen.Config{ OutPath: "query", Mode: gen.WithoutContext | gen.WithDefaultQuery | gen.WithQueryInterface, // generate mode }) // gormdb, _ := gorm.Open(mysql.Open("root:@(127.0.0.1:3306)/demo?charset=utf8mb4&parseTime=True&loc=Local")) g.UseDB(db) // reuse your gorm db // Generate basic type-safe DAO API for struct `model.User` following conventions g.ApplyBasic(model.Mandant{}, model.User{}, model.Ansprechpartner{}, model.Dokument{}, model.Firma{}, model.Kalender{}, model.Kalendereintrag{}, model.Kostenstelle{}, model.Lager{}, model.Lagerplatz{}, model.Material{}, model.Nachricht{}, model.Projekt{}, model.Rechnung{}, model.Rechnungsposition{}, model.Scanobject{}, model.User{}, model.Zahlung{}, model.FirmaAnsprechpartner{}, model.Task{}) // Generate the code g.Execute() }