@G_tost
Fullstack developer

Почему mogolab не сохраняет объекты (golang, драйвер «gopkg.in/mgo.v2», )?

в монголеб добавляется только айдишник .
Не могу понять в чем может быть проблема .
"_id": {
"$oid": "56bdfce2e8d67ac70dfe137e"
}


col := session.DB(database).C(collection)
session.SetMode(mgo.Monotonic, true)

session.SetMode(mgo.Monotonic, true)

count, err2 := col.Count()

if err2 != nil {
panic(err2)
}

fmt.Println(fmt.Sprintf("Messages count: %d", count))

err = session.DB(database).Login(username, password);
if err != nil {
panic(err)

}
err = col.Insert(&Person{name:"TestName", Pone:"+365756765"})
  • Вопрос задан
  • 358 просмотров
Решения вопроса 1
mirrr
@mirrr
Программист и просто хороший человек
package main

import (
	"fmt"
	"gopkg.in/mgo.v2"
)

type (
	person struct {
		Name  string
		Phone string
	}
)

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

	session.SetMode(mgo.Monotonic, true)
	col := session.DB("database").C("collection")

	count, _ := col.Count()
	fmt.Println(fmt.Sprintf("Messages count: %d", count))

	err = col.Insert(&person{Name: "TestName", Phone: "+365756765"})
}


Результат:

> use database
switched to db database
> db.collection.find()
{ "_id" : ObjectId("56bf67529ac5b6a0afcbe7b4"), "name" : "TestName", "phone" : "+365756765" }
{ "_id" : ObjectId("56bf67569ac5b6a0afcbe7b5"), "name" : "TestName", "phone" : "+365756765" }
{ "_id" : ObjectId("56bf67589ac5b6a0afcbe7b6"), "name" : "TestName", "phone" : "+365756765" }
{ "_id" : ObjectId("56bf675a9ac5b6a0afcbe7b7"), "name" : "TestName", "phone" : "+365756765" }


В моем коде все работает. Что у вас не так, сложно понять, так-как код приведен не полностью. Но могу предположить, что в структуре Person названия полей не с заглавных букв начинаются и потому поля приватны.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы