From d70f95a3d6fc13a9f4554e74b838771ea7c928b2 Mon Sep 17 00:00:00 2001 From: Prachi Damle Date: Thu, 7 Jun 2018 11:56:02 -0700 Subject: [PATCH] Changes to Mapper embed to insert nil value if applicable for a schema field --- types/mapper/embed.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/types/mapper/embed.go b/types/mapper/embed.go index 06d4f572..8c1c9a5e 100644 --- a/types/mapper/embed.go +++ b/types/mapper/embed.go @@ -13,6 +13,7 @@ type Embed struct { Ignore []string ignoreOverride bool embeddedFields []string + EmptyValueOk bool } func (e *Embed) FromInternal(data map[string]interface{}) { @@ -39,6 +40,9 @@ func (e *Embed) ToInternal(data map[string]interface{}) { delete(data, fieldName) } if len(sub) == 0 { + if e.EmptyValueOk { + data[e.Field] = nil + } return } data[e.Field] = sub