sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur hanterar jag en godtycklig hash som returneras från mongo i go (med hjälp av mgo)?

Du kan använda en generisk karta, till exempel:

var result map[string]interface{}
err := collection.Find(query).One(&result)

Du hittar personer som använder bson.M , som också är en karta med samma underliggande typ. Det finns inget speciellt med bson.M , fastän. Det är bara ett kort och bekvämt namn på en karta. Du kan skapa ditt eget bekväma namn eller använda en vanlig karta som i exemplet ovan.

Ett annat sätt att få tillgång till dokument utan ett definierat schema är att använda bson.D i stället för karttypen ovan. bson.D är mest användbar när ordningen på element i dokumentet är relevant, eller om du vill minska operationskostnaden något (kartor är lite dyrare att hantera på grund av sin natur). bson.D typ är en del av strukturvärden med nyckel/värde-par. Till skillnad från bson.M , bson.D är speciell och hanteras internt av mgo/bson-paketet.




  1. Redis - Utgångna index tas inte bort

  2. Hur modellerar man en många självrefererande relation med många föräldrar?

  3. Hur får man flera JSON-objekt med hjälp av nodejs och mongoose?

  4. Ställ in redis nyckel/värde med camel-redis