loopbackio / loopbackio/loopback-next
Query nested relations recursively
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 5.1k
- Fork
- 1.1k
- Merge medio
- 2g 21h
- PR unite (30g)
- 27
Descrizione
## Suggestion
Original from [comment](https://github.com/strongloop/loopback-next/issues/3454#issuecomment-609847868).
LoopBack 4 provides the custom scope to achieve inclusion, which was implemented in #3454. But it only goes down to the certain levels of relations that are described in the filter, for example, three levels:
```
const filter = {
include: [
{
relation: 'nested 1',
scope: {
include: [{relation: 'nested 2'}],
},
},
],
};
```
It'd be good to have a better way to query nested relations to max depth/ N degrees, something like `{relation: "nested", depth: 10}`.
## Examples
Model `Comment` has many `replies: Comment[]`, and comments in the `replies` has many `replies`, etc. Returns when there is no more replies or the max depth is reached.
## Acceptance criteria
- [ ] Provide a way to query nested relations to max depth/ N degrees, or at least to have a helper function for writing the filter.
- [ ] Should document how to configure the max depth of such traverses.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia leggendo il lavoro sull’inclusione di custom-scope nell’issue #3454 e gli esempi di filtri nested-relation in questa issue. Definisci come deve comportarsi un attraversamento limitato in profondità per le risposte ricorsive di Comment, documenta la configurazione max-depth e verifica che l’attraversamento si arresti al raggiungimento del limite o alla fine della relazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- typescript
- Ambito
- api, backend
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 25/100