首页 > 后端开发 > Golang > 为什么我的 mgo 查询在 Go 中返回空对象?

为什么我的 mgo 查询在 Go 中返回空对象?

DDD
发布: 2024-12-22 16:09:10
原创
844 人浏览过

Why Are My mgo Queries Returning Empty Objects in Go?

Go 的 Mgo 中的空对象之谜

在 Go API 开发领域,使用 MongoDB 和 mgo 包时会出现一个常见的障碍。开发人员经常遇到令人困惑的情况,查询返回空对象,让他们感到困惑。为了阐明这个谜团,让我们深入研究一个示例。

考虑一个场景,您希望使用 mgo 包与 MongoDB 集合进行交互。成功连接到数据库后,您可以执行查询以根据用户名检索用户。然而,令您沮丧的是,返回的对象仍然没有任何数据。

这个谜团的解决方案在于在定义 Go 结构时使用 BSON 和 JSON 标签。本质上,您需要确保导出结构体的字段,否则 mgo 包将忽略它们。要实现此目的,只需在字段前添加大写字母:

type users struct {
    User string `bson:"user" json:"user"`
    Data string `bson:"data" json:"data"`
}
登录后复制

通过遵循此约定,您明确声明应导出这些字段并可供 mgo 包访问。进行此调整后,后续查询将不再产生空对象,从而允许您从 MongoDB 检索所需的数据。

以上是为什么我的 mgo 查询在 Go 中返回空对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板