首页 > 解决方案 > 如何将对象添加到mongodb中的数组

问题描述

type Student struct {
    ID           primitive.ObjectID   `bson:"_id,omitempty"`
    ...
    Users      []primitive.ObjectID `json:"users"`
    ...
}

我有这个结构,我想添加到Users array. 我正在这样做,我正在使用Mongo-go-driver

// Filter for search
filter := bson.M{"_id": userID}

// Fields to update
update := bson.M{"$addToSet": bson.M{"users": ID}}

// Update the document
UsersCollection := GetUsersCollection()
UsersCollection.FindOneAndUpdate(context.Background(), filter, update, nil)

有人可以告诉我我做错了什么吗?它没有添加到数据库中,它保持为空。

标签: mongodbgo

解决方案


更改建议:

  1. 将结构元数据标记更改jsonbson
type Student struct {
    ID           primitive.ObjectID   `bson:"_id,omitempty"`
    ...
    Users      []primitive.ObjectID   `bson:"users"`
    ...
}

推荐阅读