model struct support dbTabler method TableName()

This commit is contained in:
奉直 2020-04-21 10:30:29 +08:00
parent 7ea143b548
commit 722e0b0227

View File

@ -42,6 +42,8 @@ func (s *ModelStruct) TableName(db *DB) string {
// Set default table name // Set default table name
if tabler, ok := reflect.New(s.ModelType).Interface().(tabler); ok { if tabler, ok := reflect.New(s.ModelType).Interface().(tabler); ok {
s.defaultTableName = tabler.TableName() s.defaultTableName = tabler.TableName()
} else if dbTabler, ok := reflect.New(s.ModelType).Interface().(dbTabler); ok {
s.defaultTableName = dbTabler.TableName(db)
} else { } else {
tableName := ToTableName(s.ModelType.Name()) tableName := ToTableName(s.ModelType.Name())
db.parent.RLock() db.parent.RLock()