如何使用所有结构变量从 mongodb 获取数据?
How to get the data from mongodb with all the struct variables?
在此代码中,我试图从 MongoDB 数据库访问 Cardname
,但它给了我一个空字符串。虽然它会打印 Cardname
之前的所有变量,但不会打印 Cardname
和 Cardname
之后的变量本身。
type UserCredentials struct {
Fname string
Lname string
Email string
Password string
Phone string
Country string
State string
Faddress string
Laddress string
Postal string
Company string
Cardname string
Cardnumber string
Expmonth string
Expyear string
}
func FindCard(email, password string) {
var uc UserCredentials
collection := Connect.Database("eCommerce").Collection("register")
if err := collection.FindOne(context.TODO(), bson.M{"email": email, "password": password}).Decode(&uc); err != nil {
log.Fatal(err)
}
fmt.Println(uc.Cardname)
}
mongo 驱动程序不会神奇地找出您要将哪个文档字段设置到哪个结构字段。
有一些“常识”规则,比如字段名匹配属性(即使首字母不大写),但是字段名Cardname
不会与[=24=匹配] 姓名 "card name"
.
你必须使用结构标签来告诉映射,即 bson
结构标签(这是 mongo-go 驱动程序使用的)。
例如:
type UserCredentials struct {
Fname string
Lname string
Email string
Password string
Phone string
Country string
State string
Faddress string
Laddress string
Postal string
Company string
Cardname string `bson:"card name"`
Cardnumber string `bson:"card number"`
Expmonth string `bson:"expiry month"`
Expyear string `bson:"expiry year"`
}
在此代码中,我试图从 MongoDB 数据库访问 Cardname
,但它给了我一个空字符串。虽然它会打印 Cardname
之前的所有变量,但不会打印 Cardname
和 Cardname
之后的变量本身。
type UserCredentials struct {
Fname string
Lname string
Email string
Password string
Phone string
Country string
State string
Faddress string
Laddress string
Postal string
Company string
Cardname string
Cardnumber string
Expmonth string
Expyear string
}
func FindCard(email, password string) {
var uc UserCredentials
collection := Connect.Database("eCommerce").Collection("register")
if err := collection.FindOne(context.TODO(), bson.M{"email": email, "password": password}).Decode(&uc); err != nil {
log.Fatal(err)
}
fmt.Println(uc.Cardname)
}
mongo 驱动程序不会神奇地找出您要将哪个文档字段设置到哪个结构字段。
有一些“常识”规则,比如字段名匹配属性(即使首字母不大写),但是字段名Cardname
不会与[=24=匹配] 姓名 "card name"
.
你必须使用结构标签来告诉映射,即 bson
结构标签(这是 mongo-go 驱动程序使用的)。
例如:
type UserCredentials struct {
Fname string
Lname string
Email string
Password string
Phone string
Country string
State string
Faddress string
Laddress string
Postal string
Company string
Cardname string `bson:"card name"`
Cardnumber string `bson:"card number"`
Expmonth string `bson:"expiry month"`
Expyear string `bson:"expiry year"`
}