Files
evan ffecc9451d backend: add bookmark CRUD with public list endpoint
New bookmarks feature: domain model, repository, service and handler
supporting list/create/update/delete. Public endpoint exposes the
admin user's bookmarks for the homepage navigation grid; authenticated
endpoints scope by user. Dev Dockerfile drops air for plain `go run`
and uses goproxy.cn to avoid build failures on the deploy host.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-03 01:51:43 +08:00

28 lines
555 B
Go

package db
import (
"log"
"evanpage-backend/internal/config"
"evanpage-backend/internal/domain"
"gorm.io/driver/postgres"
"gorm.io/gorm"
)
var DB *gorm.DB
func Init(cfg *config.Config) *gorm.DB {
var err error
DB, err = gorm.Open(postgres.Open(cfg.DatabaseURL), &gorm.Config{})
if err != nil {
log.Fatalf("failed to connect database: %v", err)
}
if err := DB.AutoMigrate(&domain.User{}, &domain.Bookmark{}); err != nil {
log.Fatalf("failed to migrate database: %v", err)
}
log.Println("database connected and migrated")
return DB
}