# #mongodb #go #mongo-go
Вопрос:
В настоящее время у меня есть код GO, который выглядит следующим образом:
_, err = swapStruct.ReferenceCollection.UpdateByID(ctx, swapStruct.ReferenceID, bson.D{
{"$push", bson.D{{"students", objIDs}}},
})
чтобы вставить массив объектов в определенный документ под ключом «учащиеся». Однако в этом документе он в конечном итоге вставляется под ключом «students.0». Как вставить массив «objIDs» в этот документ под ключом «студенты» вместо того, чтобы он
находился под массивом «0» под ключом «студент»?
Ответ №1:
$push
помещает значение в массив. В своем коде вы помещаете массив как один элемент. Чтобы переместить значения массива, используйте $each
:
{"$push", bson.M{"students": bson.M{"$each": objIDs}}}