2017-02-09 10 views
0

mongoデータベースでリクエストからフォームを作成しようとしました(私は現時点で入手したデータの構造を知らない)。ここでリクエストからフォームをシリアル化してmongoに入れる

は私のコードです:

fmt.Println(r.Form) 
for key, values := range r.Form { // range over map 
    for _, value := range values { // range over []string 
     fmt.Println(key, value) 
    } 

} 
fmt.Println(r.Form) 
decoder := json.NewDecoder(r.Body) 
session, err := mgo.Dial("127.0.0.1") 
if err != nil { 
    panic(err) 
} 
defer session.Close() 

// Optional. Switch the session to a monotonic behavior. 
session.SetMode(mgo.Monotonic, true) 

c2 := session.DB("finger_bag").C("finger") 
data, err := bson.Marshal(decoder) 
err2 := c2.Insert(data) 
if (err2 != nil){ 
    Info.Println("error") 
    Info.Println(err2) 
} 

誰もがそれを行うにはどのように任意のアイデアを持っている場合。

+0

あなたがコードで抱えている問題は何ですかあなたは今? – Adrian

+0

@adrianそれはデータベース{'_id':ObjectId( '589c8e19598eb7cc62b4c5e9')}には何も入れません – user462794

+0

'bson.Marshal'のエラーを確認してください – jcbwlkr

答えて

1

あなたがr.Formの内容を保存したい場合は、むしろ非整列化しようとするよりも、r.Formを保存し、リクエストボディをremarshal:

c2.Insert(r.Form) 
関連する問題