duancaishi1897 2018-09-03 08:38
浏览 12
已采纳

Golang mgo寻找

I try to find my user in MongoDB but when I run this code :

type Person struct {
    Id bson.ObjectId `bson:"_id,omitempty"`//`json:"id" bson:"_id,omitempty"`
    username string `json:"username" bson:"username"`
    score string `json:"score" bson:"score"`
    level string `json:"level" bson:"level"`
}

result := Person{}
var id = "5b8a45912ed6f24d945bee38"
err = c.Find(bson.M{"_id":bson.ObjectIdHex(id)}).Select(bson.M{"username": 1, "score":1, "level": 1}).One(&result)

fmt.Println(result)

Just It show me :

{ObjectIdHex("5b8a45912ed6f24d945bee38") }

And don't return other value!

Thank you so much for your time!

  • 写回答

2条回答 默认 最新

  • dqhmtpuy94946 2018-09-03 10:13
    关注

    Just you should use the capital letter in first of struct names! And also you don't need

     Select(bson.M{"username": 1, "score":1, "level": 1})
    

    You can write :

    err = c.FindId(bson.ObjectIdHex(id)).One(&result)
    

    Good Luck :))

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥100 连续两帧图像高速减法
  • ¥15 组策略中的计算机配置策略无法下发
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写