tpl/collections: Add Merge function

Merges two maps recursively and returns a new one. Merge is case-insensitive.

Fixes #5992
This commit is contained in:
Bjørn Erik Pedersen
2019-07-11 07:12:44 +02:00
parent 020086cb2b
commit c624a77992
3 changed files with 281 additions and 0 deletions

View File

@@ -183,6 +183,16 @@ func init() {
},
)
ns.AddMethodMapping(ctx.Merge,
[]string{"merge"},
[][2]string{
{`{{ dict "title" "Hugo Rocks!" | collections.Merge (dict "title" "Default Title" "description" "Yes, Hugo Rocks!") | sort }}`,
`[Yes, Hugo Rocks! Hugo Rocks!]`},
{`{{ merge (dict "title" "Default Title" "description" "Yes, Hugo Rocks!") (dict "title" "Hugo Rocks!") | sort }}`,
`[Yes, Hugo Rocks! Hugo Rocks!]`},
},
)
return ns
}