关于mongodb接口mgo的使用

刚才写了一个go程序,使用mgo来储存数据。能是能插入,但插在里面的只有obj_id,其他重要信息全都没有插进来。参照了gopher的程序,还是一样,插入的是空数据。看了官方文档,插入要在安全模式下,但我也设置了,已经很安全了,还是插不进去。

共 4 个回复


jimmykuu

代码如何写的?贴出来看看

# 0

descusr

我的代码如下

package main

import (
"labix.org/v2/mgo"
"labix.org/v2/mgo/bson"
"code.google.com/p/gorilla/sessions"
"fmt"
)

var db  *mgo.Database
var store       *sessions.CookieStore

type Links struct{
Id_        bson.ObjectId `bson:"_id"`
title string
link []string
}

func main() {
session, err := mgo.Dial("127.0.0.1:27017")
if err != nil {
    panic(err)
}

session.SetMode(mgo.Monotonic, true)

db = session.DB("torrent")
collection := db.C("links")
cookie_secret := "05e0ba2eca9411e18155109add4b8aac"

store = sessions.NewCookieStore([]byte(cookie_secret))
var links []string
links = append(links, "http://www.appgolang.com")
fmt.Println("..........", store)
id := bson.NewObjectId()
l := &Links{
    Id_:        id,
    title:       "http://www.appgolang.com", 
    link:        links,}
err = collection.Insert(&l)
if err != nil{
    panic(err)
    fmt.Println(err)
}
}
# 1

jimmykuu

你的 Link struct 里的 titlelink 要首字母大写,小写是不可见的

# 2

descusr

谢谢@jimmykuu,基本功不扎实,汗!

# 3