hugo

Fork of github.com/gohugoio/hugo with reverse pagination support

git clone git://git.shimmy1996.com/hugo.git

merge.md (1538B)

    1 ---
    2 title: merge
    3 description: "Returns the result of merging two or more maps."
    4 date: 2019-08-08
    5 categories: [functions]
    6 menu:
    7   docs:
    8     parent: "functions"
    9 keywords: [dictionary]
   10 signature: ["collections.Merge MAP MAP...", "merge MAP MAP..."]
   11 workson: []
   12 hugoversion: "0.56.0"
   13 relatedfuncs: [dict, append, reflect.IsMap, reflect.IsSlice]
   14 aliases: []
   15 ---
   16 
   17 Returns the result of merging two or more maps from left to right. If a key already exists, `merge` updates its value. If a key is absent, `merge` inserts the value under the new key.
   18 
   19 Key handling is case-insensitive.
   20 
   21 The following examples use these map definitions:
   22 
   23 ```go-html-template
   24 {{ $m1 := dict "x" "foo" }}
   25 {{ $m2 := dict "x" "bar" "y" "wibble" }}
   26 {{ $m3 := dict "x" "baz" "y" "wobble" "z" (dict "a" "huey") }}
   27 ```
   28 
   29 Example 1
   30 
   31 ```go-html-template
   32 {{ $merged := merge $m1 $m2 $m3 }}
   33 
   34 {{ $merged.x }}   --> baz
   35 {{ $merged.y }}   --> wobble
   36 {{ $merged.z.a }} --> huey
   37 ```
   38 
   39 Example 2
   40 
   41 ```go-html-template
   42 {{ $merged := merge $m3 $m2 $m1 }}
   43 
   44 {{ $merged.x }}   --> foo
   45 {{ $merged.y }}   --> wibble
   46 {{ $merged.z.a }} --> huey
   47 ```
   48 
   49 Example 3
   50 
   51 ```go-html-template
   52 {{ $merged := merge $m2 $m3 $m1 }}
   53 
   54 {{ $merged.x }}   --> foo
   55 {{ $merged.y }}   --> wobble
   56 {{ $merged.z.a }} --> huey
   57 ```
   58 
   59 Example 4
   60 
   61 ```go-html-template
   62 {{ $merged := merge $m1 $m3 $m2 }}
   63 
   64 {{ $merged.x }}   --> bar
   65 {{ $merged.y }}   --> wibble
   66 {{ $merged.z.a }} --> huey
   67 ```
   68 
   69 {{% note %}}
   70 Regardless of depth, merging only applies to maps. For slices, use [append]({{< ref "functions/append" >}}).
   71 {{% /note %}}