sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvordan bruger man interface type som en model i mgo (Go)?

Du kan ikke bruge en grænseflade i et dokument af den grund, du har noteret. Dekoderen har ingen information om den type, der skal oprettes.

En måde at håndtere dette på er at definere en struktur til at indeholde typeinformationen:

type NodeWithType struct {
   Node Node `bson:"-"`
   Type string
}

type Workflow struct {
   CreatedAt time.Time
   StartedAt time.Time
   CreatedBy string
   Nodes []NodeWithType
}

Implementer SetBSON-funktionen på denne type. Denne funktion skal afkode typestrengen, skabe en værdi af den korrekte type baseret på den streng og afkode til denne værdi.

func (nt *NodeWithType) SetBSON(r bson.Raw) error {
}


  1. Håndtering af timeouts med Node.js og mongodb

  2. Opdateringsarray inde i Mongo-dokumentet virker ikke

  3. Forespørgsel med mangust og dadler

  4. Hvordan opdaterer man et stort antal dokumenter i MongoDB mest effektivt?