From 6449c7399f1b376ca7b7bf5a3ae7d68f432c86b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=99=BD=E8=8C=B6=E6=B8=85=E6=AC=A2?= Date: Mon, 17 Feb 2025 18:10:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=AD=97=E6=AE=B5=E5=90=8D?= =?UTF-8?q?=E8=A7=A3=E6=9E=90=E5=AF=B9=E4=BA=8Eomit=E7=9A=84=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- define/tag.go | 1 + struct_field.go | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/define/tag.go b/define/tag.go index 4f89323..060295c 100644 --- a/define/tag.go +++ b/define/tag.go @@ -30,4 +30,5 @@ const ( TagErrMsg = "err" // 验证失败错误信息tag TagContentType = "content_type" TagOutputContentType = "output_content_type" + TagNameOmitempty = "omitempty" ) diff --git a/struct_field.go b/struct_field.go index f6bb6e3..18a165d 100644 --- a/struct_field.go +++ b/struct_field.go @@ -34,7 +34,9 @@ func (psf parseStructField) GetParamName(structField reflect.StructField) string } for _, tag := range paramNameTagList { tagVal := structField.Tag.Get(tag) - if tagVal != "" { + tagVal = strings.TrimSuffix(strings.TrimPrefix(tagVal, define.TagNameOmitempty+","), ","+define.TagNameOmitempty) + tagVal = strings.Trim(tagVal, ",") + if tagVal != "" && tagVal != define.TagNameOmitempty { return tagVal } }