Fix mysql test

This commit is contained in:
Lunny Xiao 2021-07-08 00:03:53 +08:00
parent 5a3bc3eed4
commit f0f13dd060
1 changed files with 16 additions and 16 deletions

View File

@ -557,28 +557,28 @@ func (session *Session) convertBeanField(col *schemas.Column, fieldValue *reflec
switch rawValueType.Elem().Kind() { switch rawValueType.Elem().Kind() {
case reflect.Uint8: case reflect.Uint8:
if fieldType.Elem().Kind() == reflect.Uint8 { if fieldType.Elem().Kind() == reflect.Uint8 {
if col.SQLType.IsText() { if fieldValue.Len() > 0 {
x := reflect.New(fieldType) for i := 0; i < fieldValue.Len(); i++ {
err := json.DefaultJSONHandler.Unmarshal(vv.Bytes(), x.Interface()) if i < vv.Len() {
if err != nil { fieldValue.Index(i).Set(vv.Index(i))
return err }
} }
fieldValue.Set(x.Elem())
} else { } else {
if fieldValue.Len() > 0 { for i := 0; i < vv.Len(); i++ {
for i := 0; i < fieldValue.Len(); i++ { fieldValue.Set(reflect.Append(*fieldValue, vv.Index(i)))
if i < vv.Len() {
fieldValue.Index(i).Set(vv.Index(i))
}
}
} else {
for i := 0; i < vv.Len(); i++ {
fieldValue.Set(reflect.Append(*fieldValue, vv.Index(i)))
}
} }
} }
return nil return nil
} }
if col.SQLType.IsText() {
x := reflect.New(fieldType)
err := json.DefaultJSONHandler.Unmarshal(vv.Bytes(), x.Interface())
if err != nil {
return err
}
fieldValue.Set(x.Elem())
return nil
}
} }
} }
case reflect.Struct: case reflect.Struct: