Возникла проблема с обновлением документа с использованием драйвера golang mon go. Сценарий: я хочу обновить поле, вложенное в структуру. Например: StructOuter -> structInner -> field1, field2, field3. Теперь, если я хочу обновить field3 и у меня есть соответствующее значение в качестве другой структуры, как я могу go вперед, просто обновив это поле в одиночку. Я попытался с помощью приведенного ниже кода, но он обновляет весь structInner, оставляя только поле 3:
conv, _ := bson.Marshal(prod)
bson.Unmarshal(conv, &updateFields)
update := bson.M{
"$set": updateFields,
}
model.SetUpdate(update).
Пример JSON:
{
"field_one": "value",
"data": {
"field_two": [
"data1",
"data2"
],
"field_three": "check",
"field_four": "abc",
"field_five": "work",
}
}
Я хочу избежать жесткого запроса полей для обновления.
Просто хочу узнать, поддерживается ли это, если да, можете ли вы помочь мне с этим, а также указать на некоторые глубокие ссылки для погружения по этому вопросу.