Mongodb 如何在mongo db中获取数组中的元素数。我正在使用go lang ie mgo驱动程序?
我有以下代码,但当我得到Mongodb 如何在mongo db中获取数组中的元素数。我正在使用go lang ie mgo驱动程序?,mongodb,go,bson,mgo,Mongodb,Go,Bson,Mgo,我有以下代码,但当我得到nil结果时,我被困在获取喜欢的计数上 package main import ( "fmt" "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" "os" ) func main() { uri := "mongodb://root:tempyml@localhost:27017" sess, err := mgo.Dial(uri) if err != nil {
nil
结果时,我被困在获取喜欢的计数上
package main
import (
"fmt"
"gopkg.in/mgo.v2"
"gopkg.in/mgo.v2/bson"
"os"
)
func main() {
uri := "mongodb://root:tempyml@localhost:27017"
sess, err := mgo.Dial(uri)
if err != nil {
fmt.Printf("Can't connect to mongo, go error %v\n", err)
os.Exit(1)
}
defer sess.Close()
sess.SetSafe(&mgo.Safe{})
collection := sess.DB("visibl_dev").C("user_videos")
pipe := collection.Pipe([]bson.M{{"$project": bson.M{"likes": 1,
"likeCount": bson.M{"$size": "$likes"}}}})
result := []bson.M{}
err = pipe.All(&result)
if err != nil {
//handle error
}
fmt.Println(result)
}
有什么错误吗?您似乎已经注释掉了错误处理部分。我在本地计算机上运行了一个示例,没有任何问题。您使用的Go和Mongo版本是什么?我还建议为您的结果构建一个结构,而不是使用bson.MI错误,错误是“exception:the argument to$size必须是一个数组,但类型为:EOO”。是否有任何错误?您似乎已经注释掉了错误处理部分。我在本地计算机上运行了一个示例,没有任何问题。您使用的Go和Mongo版本是什么?我还建议为您的结果构建一个结构,而不是使用bson.MI错误,错误是“异常:$size的参数必须是数组,但类型为:EOO”