MGO - Mongo返回的空结果有结果

 何包蛋0727 发布于 2023-02-06 22:29

我有一个GOLANG结构如下:

type OrgWhoAmI struct {
FriendlyName            string        `json:"friendlyName"`
RedemptionCode          string        `json:"redemptionCode"`
StartUrls               []StartUrl    `json:"startUrls"`
Status                  string        `json:"status"`
Children                []OrgChildren `json:"childrenReemptionCodes"`
}

type StartUrl struct {
DisplayName string `json:"displayName"`
URL         string `json:"url"`
}

type OrgChildren struct {
FriendlyName   string `json:"childFriendlyName"`
RedemptionCode string `json:"childRedemptionCode"`
}

我已经创建并成功将记录插入到MongoDB集合中(因为我可以通过CLI mongo程序查询Mongo来查看结果) - 但是当我用MGO查询如下时,我什么也得不到:

func main() {
    session, sessionErr := mgo.Dial("localhost")
defer session.Close()

    // Query All
    collection := session.DB("OrgData").C("orgWhoAmI")
var results []OrgWhoAmI
err = collection.Find(bson.M{}).All(&results)
if err != nil {
    panic(err)
}
for _, res := range results {
    fmt.Printf("Result: %s|%s\n", res.FriendlyName, res.RedemptionCode)
}
}

印刷的结果是:

结果:| 结果:| 结果:| 结果:|

如果我要求记录的计数,我得到正确的数字,但所有字段的所有值都是空白的.不知道我在这里缺少什么.

1 个回答
  • 如果您没有在go中创建它们,则可能没有正确地为您键入密钥名称.bson的默认值是小写键,因此如果需要其他内容,则需要指定它.另外请注意,你有一个错字OrgWhoAmIjson:"childrenReemptionCodes"(应该是救赎,我猜).如果希望它们不同,您可以单独指定bson和json.

    type OrgWhoAmI struct {
       FriendlyName            string        `bson:"friendlyName" json:"friendlyName"`
       RedemptionCode          string        `bson:"redemptionCode" json:"redemptionCode"`
       StartUrls               []StartUrl    `bson:"startUrls" json:"startUrls"`
       Status                  string        `bson:"status" json:"status"`
       Children                []OrgChildren `bson:"childrenRedemptionCodes" json:"childrenRedemptionCodes"`
    }
    
    type StartUrl struct {
       DisplayName string `bson:"displayName" json:"displayName"`
       URL         string `bson:"url" json:"url"`
    }
    
    type OrgChildren struct {
       FriendlyName   string `bson:"childFriendlyName" json:"childFriendlyName"`
       RedemptionCode string `bson:"childRedemptionCode" json:"childRedemptionCode"`
    }
    

    2023-02-06 22:50 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有