| 1234567891011121314151617181920212223242526272829303132333435 |
- package models
- import (
- "database/sql"
- "time"
- "xorm.io/xorm/names"
- "github.com/go-kratos/kratos/v2/log"
- "xorm.io/xorm"
- _ "github.com/go-sql-driver/mysql"
- )
- type Mysql struct {
- XDB *xorm.Engine
- DB *sql.DB
- log *log.Helper
- }
- func NewMysql(source string, logger log.Logger) (*Mysql, error) {
- orm, err := xorm.NewEngine("mysql", source)
- if err != nil {
- return nil, err
- }
- orm.TZLocation, _ = time.LoadLocation("Asia/Shanghai")
- orm.SetMapper(names.LintGonicMapper)
- m := &Mysql{
- XDB: orm,
- DB: orm.DB().DB,
- log: log.NewHelper(log.With(logger, "module", "models/init")),
- }
- return m, nil
- }
|