Невозможно распечатать / найти количество записей mongo_db с помощью go - PullRequest
1 голос
/ 29 сентября 2019
import "go.mongodb.org/mongo-driver/bson"
import "go.mongodb.org/mongo-driver/bson/primitive"
import "go.mongodb.org/mongo-driver/mongo"
import "go.mongodb.org/mongo-driver/mongo/options"

func count() int{
     collection := client.Database("thepolyglotdeveloper").Collection("people")
    filter := bson.M{"sig": bson.M{ "$eq": "sdfsdf" }}//iv.Sig
    cur,_ := collection.Find(context.TODO(), filter)
    count,_ := collection.Count(context.TODO(), filter)
    return count
}

func main(){
    ctx, _ := context.WithTimeout(context.Background(), 10*time.Second)
    clientOptions := options.Client().ApplyURI("mongodb://localhost:27017")
    client, _ = mongo.Connect(ctx, clientOptions)
    .....
}

Получена ошибка: -

# command-line-arguments
./example.go:131:23: collection.Count undefined (type *mongo.Collection has no field or method Count)

Я считаю, что я не использую правильный метод для подсчета.Я использую его, чтобы узнать, есть ли какая-либо запись, которая уже существует с фильтром в базе данных.Пожалуйста, предложите.

count,_ := collection.Count(context.TODO(), filter)

Это правильное использование.

1 Ответ

0 голосов
/ 30 сентября 2019

EstimatedDocumentCount и CountDocuments - это методы, используемые для получения количества документов в собрании.

Для получения информации о доступных функциях см. Общая документация для драйвера MongoDB Go:

https://godoc.org/go.mongodb.org/mongo-driver/mongo

...