gpt4 book ai didi

mongodb - mgo 中的关系

转载 作者:IT王子 更新时间:2023-10-29 00:54:18 24 4
gpt4 key购买 nike

我用 golang 和 mgo 写了一些简单的程序。我的问题是如何正确处理 mgo 中的关系。

第一种方法:

type User struct {
Id bson.ObjectId `json:"_id,omitempty" bson:"_id,omitempty"`
Username string `json:"username" bson:"username"`
Email string `json:"email" bson:"email"`
Password string `json:"password" bson:"password"`
Friends []User `json:"friends" bson:"friends"`
}

friend ”是用户的一部分。我可以 $push 一个指向用户的指针,它工作正常。问题是我只想存储对用户的引用而不是嵌套它:

第二种方法:

type User struct {
Id bson.ObjectId `json:"_id,omitempty" bson:"_id,omitempty"`
Username string `json:"username" bson:"username"`
Email string `json:"email" bson:"email"`
Password string `json:"password" bson:"password"`
Friends []bson.ObjectId `json:"friends" bson:"friends"`
}

这给了我想要的输出——但现在从引用了嵌套结构的结构中看不到。 mgo 是否提供一些机制来处理这个问题?

最佳答案

mgo 是一个数据库驱动程序库,而不是一个 ORM..我要做的是使用第二个示例中的 ids 数组(未导出,小写),并使用 Friends() 方法通过这些 id 查询数据库并返回 []User

关于mongodb - mgo 中的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27659487/

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