this repo has no description
1package db 2 3import ( 4 "context" 5 6 "gorm.io/gorm" 7 "gorm.io/gorm/clause" 8) 9 10type DB struct { 11 cli *gorm.DB 12} 13 14func NewDB(cli *gorm.DB) *DB { 15 return &DB{ 16 cli: cli, 17 } 18} 19 20func (db *DB) Create(ctx context.Context, value any, clauses []clause.Expression) *gorm.DB { 21 return db.cli.WithContext(ctx).Clauses(clauses...).Create(value) 22} 23 24func (db *DB) Save(ctx context.Context, value any, clauses []clause.Expression) *gorm.DB { 25 return db.cli.WithContext(ctx).Clauses(clauses...).Save(value) 26} 27 28func (db *DB) Exec(ctx context.Context, sql string, clauses []clause.Expression, values ...any) *gorm.DB { 29 return db.cli.WithContext(ctx).Clauses(clauses...).Exec(sql, values...) 30} 31 32func (db *DB) Raw(ctx context.Context, sql string, clauses []clause.Expression, values ...any) *gorm.DB { 33 return db.cli.WithContext(ctx).Clauses(clauses...).Raw(sql, values...) 34} 35 36func (db *DB) AutoMigrate(models ...any) error { 37 return db.cli.AutoMigrate(models...) 38} 39 40func (db *DB) Delete(ctx context.Context, value any, clauses []clause.Expression) *gorm.DB { 41 return db.cli.WithContext(ctx).Clauses(clauses...).Delete(value) 42} 43 44func (db *DB) First(ctx context.Context, dest any, conds ...any) *gorm.DB { 45 return db.cli.WithContext(ctx).First(dest, conds...) 46} 47 48func (db *DB) Begin(ctx context.Context) *gorm.DB { 49 return db.cli.WithContext(ctx).Begin() 50} 51 52func (db *DB) Client() *gorm.DB { 53 return db.cli 54}