loopbackio / loopbackio/loopback-datasource-juggler
loopback fails on referencesMany relation missing foreignKey in scope for nested hasMany inclusion
Personne n'a encore pris cette issue.
- Langage dominant
- JavaScript
- Étoiles
- 282
- Forks
- 366
- Merge moyen
- 17 h 4 min
- PR mergées (30 j)
- 10
Description
1. say model A as a referencesMany relation with model B
and model B has a hasMany relation with model C
2. adding a scope in relation A>B to restrict fields in a way that 'A.id' is not included in results
3. doing a GET on model A to get B relations through referencesMany, using built-in methods, and including relation B>C using filter {include:C}
loopback fails with
`TypeError: Cannot read property 'toString' of undefined
at KVMap.keyToString (../api_loopback/node_modules/loopback-datasource-juggler/lib/include_utils.js:64:46)
at Object.KVMap.mapImpl.set (../api_loopback/node_modules/loopback-datasource-juggler/lib/include_utils.js:70:13)
at Object.buildOneToOneIdentityMapWithOrigKeys (../api_loopback/node_modules/loopback-datasource-juggler/lib/include_utils.js:19:11)
at includeHasManySimple (../api_loopback/node_modules/loopback-datasource-juggler/lib/include.js:498:36)
at processIncludeItem (../api_loopback/node_modules/loopback-datasource-juggler/lib/include.js:275:16)
at ../api_loopback/node_modules/loopback-datasource-juggler/lib/include.js:173:5
at ../api_loopback/node_modules/loopback-datasource-juggler/node_modules/async/lib/async.js:157:13
at _each (../api_loopback/node_modules/loopback-datasource-juggler/node_modules/async/lib/async.js:57:9)
at Object.async.each (../api_loopback/node_modules/loopback-datasource-juggler/node_modules/async/lib/async.js:156:9)
at Function.Inclusion.include (../api_loopback/node_modules/loopback-datasource-juggler/lib/include.js:172:9)`
Obviously the include cannot work as i'm missing the id for relation hasMany to work, but this should be caught silently and not return the inclusion (which is actually the intent) rather than killing the server
Could easily fix this, but as there are many places to do so, i'd prefer to wait for proper guidance before submitting a fix proposal.
Eric
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Évaluation
Cette issue n'a pas encore été évaluée.