我有以下结构
type Result struct {
nid string
timestamp int64
hexhash string
addr string
}
我要保存到mongodb:
我创造了它
r := Result{hex_id, int64(msg.timestamp.Unix()), hexhash, msg.addr.String()}
并测试它是否正确创建:
fmt.Println(r)
这给了我结果我期待:
{b8da3f19d1318af6879976c1eea66c78c48e1144 1421417252 65072917F19D7F4C4B54C9C66A3EB31F77012981 127.0.0.1:65290}
然后我把它保存到mongo:
h.c.Insert(r)
但是在mongo我只看到空记录:
db.data.find()
{" _id" :ObjectId(" 54b91a268da6c829a412cd4d")}
上面代码中的h定义为
type Handler struct {
storage map[string]Message
new_msg chan Message
new_inp chan Input
c *mgo.Collection
}
和
h.c = session.DB(DATABASE).C(COLLECTION)
答案 0 :(得分:1)
您的记录字段需要对其他包(如MongoDB包装器)公开才能看到它们。重命名字段如下:
type Result struct {
Nid string
Timestamp int64
Hexhash string
Addr string
}