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

Mongoengine deferencing sker efter brug af select_related()

Først et ord af advarsel, dette er ikke kun et relationelt skema, men et rekursivt relationelt skema. Du kan følge relationerne og ende med at indlæse alle UserAccount genstande.

Husk, at der ingen joins er i MongoDB - så du beder klientkoden (mongoengine) om at udføre i application joins for dig - hvilket betyder flere forespørgsler og derefter tildele resultaterne til de korrekte dokumenter - det er dyrt. Så spørg venligst dig selv "er dette det rigtige værktøj til jobbet? "

Dine observationer er dog korrekte - som standard select_related() går kun ned i en enkelt relation, så for et brugerobjekt vil det kun dereferere det første sæt venner og ikke deres venner. Du kan ændre dybden ved at overføre den til select_related(max_depth=2) .




  1. Serialisering af MongoDB find() vender tilbage til et ikke-anonymt JSON-array ved hjælp af PyMongo

  2. Sådan opretter du mongoose-skema med en række objekter

  3. auto-increment ved hjælp af loopback.js og MongoDB

  4. Sådan laver du brugerdefineret kortlægning ved hjælp af mongo-stik med elasticsearch