Files
web_server/backend/main.go
2025-11-17 22:26:21 +00:00

51 lines
914 B
Go

package main
import (
"fmt"
"net/http"
"log"
"gorm.io/driver/postgres"
"gorm.io/gorm"
"adam-french.co.uk/backend/models"
)
func connectToPostgreSQL() (*gorm.DB, error) {
dsn := "user=postgres password=password dbname=simplebackend host=localhost port=5432 sslmode=disable"
db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})
if err != nil {
return nil, err
}
return db, nil
}
func main() {
db, err := connectToPostgreSQL()
if err != nil {
log.Fatal(err)
}
defer db.Close()
// Perform database migration
err = db.AutoMigrate(&models.User{})
if err != nil {
log.Fatal(err)
}
err = db.AutoMigrate(&models.Post{})
if err != nil {
log.Fatal(err)
}
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintln(w, "Hello from Go!")
})
fmt.Println("Server running on :8080")
if err := http.ListenAndServe(":8080", nil); err != nil {
panic(err)
}
}