package data import ( "context" "gorm.io/gorm" ) type Db struct { db *GormDb } func NewDb(db *GormDb) *Db { return &Db{ db: db, } } type contextTxKey struct{} func (d *Db) DB(ctx context.Context) *gorm.DB { tx, ok := ctx.Value(contextTxKey{}).(*gorm.DB) if ok { return tx } return d.db.Client }