package svc import ( "slowwild/internal/config" "slowwild/internal/model" "gorm.io/driver/mysql" "gorm.io/gorm" "gorm.io/gorm/schema" ) type ServiceContext struct { Config config.Config UserModel model.UserModel UserFollowModel model.UserFollowModel } func NewServiceContext(c config.Config) *ServiceContext { db, err := gorm.Open(mysql.Open(c.DB.DataSource), &gorm.Config{ NamingStrategy: schema.NamingStrategy{ TablePrefix: "p_", SingularTable: true, }, }) if err != nil { panic(err) } return &ServiceContext{ Config: c, UserModel: model.NewUserModel(db), UserFollowModel: model.NewUserFollowModel(db), } }