bson.M
er en korttype, så bson.M{ ... }
er en kortbogstav
. Hvis nøgle-værdi-par er skrevet i flere rækker, skal hver ende med et komma. For detaljer, se Hvordan knækker man en lang kodelinje i Golang?
Der er heller ingen "grænseflade" bogstaveligt, slip det. En værdi af interface{}
type kan holde / ombryde enhver værdi, inklusive en bson.M
værdi. Og interface{}
værdiskabelse er automatisk, du behøver ikke engang en type konvertering
.
Korrekt syntaks:
convIter := Session.Copy().DB("").C("convs").Find(bson.M{
"conversationStatus": bson.M{
"$ne": "DESTROYED",
},
}).Iter()
På samme måde, hvis du bruger bson.D
type (som er et udsnit), linjer, der ikke ender med den afsluttende parentes af bogstavet, skal slutte med et komma, f.eks.:
d := bson.D{
{Name: "fieldA", Value: 1},
{Name: "fieldB", Value: "running"},
}