|
@@ -108,7 +108,7 @@ loop:
|
|
// проверяем тег, если он есть
|
|
// проверяем тег, если он есть
|
|
tag := fType.Tag.Get("rest")
|
|
tag := fType.Tag.Get("rest")
|
|
log.Println("=================================", fType.Name)
|
|
log.Println("=================================", fType.Name)
|
|
- if fType.Type.Kind() == reflect.Ptr {
|
|
|
|
|
|
+ if fType.Anonymous && fType.Type.Kind() == reflect.Ptr {
|
|
log.Println("PTR...")
|
|
log.Println("PTR...")
|
|
elem := fType.Type.Elem()
|
|
elem := fType.Type.Elem()
|
|
if elem.Kind() == reflect.Struct {
|
|
if elem.Kind() == reflect.Struct {
|
|
@@ -116,6 +116,7 @@ loop:
|
|
if fVal.IsNil() {
|
|
if fVal.IsNil() {
|
|
log.Println("IS_NIL")
|
|
log.Println("IS_NIL")
|
|
fVal.Set(reflect.New(elem))
|
|
fVal.Set(reflect.New(elem))
|
|
|
|
+ log.Println(fVal.IsNil())
|
|
}
|
|
}
|
|
if ierr := parseStruct(from, fVal.Elem(), prefixFieldName(fieldName, fType.Name)); ierr != nil {
|
|
if ierr := parseStruct(from, fVal.Elem(), prefixFieldName(fieldName, fType.Name)); ierr != nil {
|
|
return ierr
|
|
return ierr
|