diff --git a/swagger/run.go b/swagger/run.go index 332c503..150a57f 100644 --- a/swagger/run.go +++ b/swagger/run.go @@ -229,7 +229,7 @@ func generateParameterDefinitions(swaggerInfo *define.Swagger, uri string, paren parentPath = uri + ".input" } if len(subPathArr) == 2 { - if _, exist := swaggerInfo.Definitions[parentPath]; !exist { + if _, exist := swaggerInfo.Definitions[parentPath]; !exist && subPathArr[0] != "[]" { swaggerInfo.Definitions[parentPath] = &define.SwaggerDefinition{ Type: "object", Required: make([]string, 0), @@ -246,7 +246,7 @@ func generateParameterDefinitions(swaggerInfo *define.Swagger, uri string, paren } } else { if subPathArr[0] == "[]" { - generateParameterDefinitions(swaggerInfo, uri, parentPath+".item", strings.Join(subPathArr[1:], "."), paramConfig) + generateParameterDefinitions(swaggerInfo, uri, parentPath+".item", subPathArr[1], paramConfig) return } else { swaggerInfo.Definitions[parentPath].Properties[subPathArr[0]] = &define.SwaggerDefinitionProperty{