You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
265 B
20 lines
265 B
2 years ago
|
package tx
|
||
|
|
||
|
import (
|
||
|
"gorm.io/gorm"
|
||
|
)
|
||
|
|
||
|
func NewGorm(db *gorm.DB) Tx {
|
||
|
return &_Gorm{tx: db}
|
||
|
}
|
||
|
|
||
|
type _Gorm struct {
|
||
|
tx *gorm.DB
|
||
|
}
|
||
|
|
||
|
func (g *_Gorm) Transaction(fn func(tx any) error) error {
|
||
|
return g.tx.Transaction(func(tx *gorm.DB) error {
|
||
|
return fn(tx)
|
||
|
})
|
||
|
}
|