gpt4 book ai didi

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

转载 作者:IT王子 更新时间:2023-10-29 00:39:47 28 4
gpt4 key购买 nike

我有一个 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)
}
}

打印出来的结果是:

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

如果我询问记录数,我会得到正确的数字,但所有字段的所有值都是空白的。不确定我在这里遗漏了什么。

最佳答案

如果您没有在 go 中创建它们,它可能没有正确地为您序列化键名。 bson 的默认值是将键小写,所以如果你想要其他东西,你需要指定它。另请注意,您在 OrgWhoAmI 中的 json:"childrenReemptionCodes" 有错字(我猜应该是 Redemption)。如果您希望 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"`
}

关于mongodb - MGO - 从 Mongo 返回的空结果有结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20889226/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com