使用 Go 将结构插入到 Mongodb 中

我想将如下所示的数据结构插入到 MongoDB


{

    "rolecode": "DHBK1_ROLE_04",

    "functioncodelist": [

        "DHBK1_FUNC_1",

        "DHBK1_FUNC_2",

          .....

        "DHBK1_FUNC_n"]

    "productid": "ABC_Platform",

    "comid": "DHBK1"

}


这是我的代码:


package main

import (

    "context"

    "gopkg.in/mgo.v2"

)



func main() {

    insertObj()

}

type CompanyRoleFunction struct {

    Rolecode         string `json:"rolecode"`

    Productid        string `json:"productid"`

    Functioncodelist []string

    Comid string `json:"comid"`

}

func insertObj() {

    session, err := mgo.Dial("mongodb://casuser:Mellon@222.255.102.145:27017/users")

    if err != nil {

    panic(err)

    }

    c := session.DB("users").C("company_role_function")

    var companyRoleFunction CompanyRoleFunction

    companyRoleFunction.Rolecode = "DHBK1_ROLE_05"

    companyRoleFunction.Productid = "XYZ_Platform"

    companyRoleFunction.Comid = "DHBK1"

    err = c.Insert(companyRoleFunction)

    if err != nil {

        fmt.Println(err)

    }

}

我的代码已经运行,但它只插入这样的结构(当然,因为我不知道如何处理数组 Functioncodelist )


[![在此处输入图像描述][1]][1]


这是我的数据,我希望插入


{"_id":{"$oid":"5ed0c2e2402a000037004c84"},"rolecode":"DHBK1_ROLE_07","functioncodelist":["DHBK1_FUNC_1","DHBK1_FUNC_2"],"productid":"ABC_Platform","comid":"DHBK1"}


有只小跳蛙
浏览 171回答 1
1回答

郎朗坤

它没有显示在数据库中,因为您插入的文档不包含任何值。在你的 go 代码中设置一个值,它应该在数据库中显示得很好,除非我误解了你的问题。...type Functioncode string...companyRoleFunction.Functioncodelist = make(map[string]Functioncode)...companyRoleFunction.Functioncodelist["foo"] = "bar"...有关 Go 地图的快速介绍,请参见https://tour.golang.org/moretypes/19。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go