title: Nested field update using golang struct in mongoDB
body: <p>I am facing a issue with update document using golang mongo driver.
  Scenario: I want to update a field that is nested in a struct. For ex: StructOuter -> structInner -> field1, field2, field3. Now if I want to update the field3 and I have the corresponding value as another struct, how can i go ahead by just updating this field alone. I tried with code below but it updates the whole structInner leaving only field3:</p>
  
  <pre><code>conv, _ := bson.Marshal(prod)
  bson.Unmarshal(conv, &amp;updateFields)
  update := bson.M{
     "$set": updateFields,
  }
  model.SetUpdate(update). 
  </code></pre>
  
  <p>Sample JSON:</p>
  
  <pre><code>{
      "field_one": "value",
      "data": {
          "field_two": [
              "data1",
              "data2"
          ],
          "field_three": "check",
          "field_four": "abc",
          "field_five": "work",
      }
  }
  </code></pre>
  
  <p>I want to avoid hard coded field query for updating.</p>
  
  <p>Just want to know if this is supported, if yes can you help me with it and also point to some deep dive links on this.</p>