Compare commits

..

1 Commits

Author SHA1 Message Date
wenzuochao d9f729f559 modifyToMap 2020-02-24 16:03:24 +08:00
+6 -2
View File
@@ -642,13 +642,17 @@ func structToMap(dataValue reflect.Value) map[string]interface{} {
name = field.Name
}
if field.Type.Kind().String() == "struct" || (field.Type.Kind().String() == "ptr" && field.Type.Elem().Kind().String() == "struct") {
out[name] = structToMap(dataValue.FieldByName(field.Name))
if dataValue.FieldByName(field.Name).IsValid() && !dataValue.FieldByName(field.Name).IsNil() {
out[name] = structToMap(dataValue.FieldByName(field.Name))
}
} else if field.Type.Kind().String() == "ptr" {
if dataValue.FieldByName(field.Name).IsValid() {
out[name] = dataValue.FieldByName(field.Name).Elem().Interface()
}
} else {
out[name] = dataValue.FieldByName(field.Name).Interface()
if dataValue.FieldByName(field.Name).IsValid() {
out[name] = dataValue.FieldByName(field.Name).Interface()
}
}
}