javascript - Multiple includes on different depths in a LoopBack/Node.js query -


i'm trying load object on node.js loopback server , want load multiple related objects in same query. these related objects on different depths. query:

/api/myusers/114?filter[include][institutes]=institute&filter[include]=departments&filter[include]=profiles 

notice [institutes]=institute have 2 levels , departments , profiles one.

this returns me error: 500 internal server error. error: relation "0" not defined user model.

on node.js debug noticed final json query generated seems wrong:

{ include:       { '0': 'departments',        '1': 'profiles',        institutes: 'institute' } },      ... } 

here model myuser:

{   "name": "myuser",   "plural": "myusers",   "base": "user",   "idinjection": true,   "options": {     "validateupsert": true   },   "mixins": {     "versioning": true,     "tenant": true   },   "properties": {     "name": {       "type": "string",       "required": true     },     "email": {       "type": "string"     }   }   "validations": [],   "relations": {     "departments": {       "type": "hasmany",       "model": "userdepartment",       "foreignkey": "user_id"     },     "institutes": {       "type": "hasmany",       "model": "userinstitute",       "foreignkey": "user_id"     },     "profiles": {       "type": "hasmany",       "model": "userprofile",       "foreignkey": "user_id"     },   },   "acls": [],   "methods": {} } 

has else faced problem? loopback bug? if so, how can turn around solution?

500 internal server error. error: relation "0" not defined user model.

this error says user model not have relation called departaments. in definition of user model, make sure added relation departaments model. (by way, if departaments english word, has spelling problem, departments correct.)

as link says:

an include filter enables include results related models in query, example, models have belongsto or hasmany relations, optimize number of requests.

this link can define relation model:

https://strongloop.com/strongblog/defining-and-mapping-data-relations-with-loopback-connected-models/

if using built-in user model, can extend below link says:

https://loopback.io/doc/en/lb3/extending-built-in-models.html

edit after comment:

one more explanation filters:

the meaning of filter[include][institutes]=institute filter is:

include 'institutes' relation of user , include 'institute' relation of 'institutes'. tested feature in 1 of projects , works fine.


Comments

Popular posts from this blog

Is there a better way to structure post methods in Class Based Views -

performance - Why is XCHG reg, reg a 3 micro-op instruction on modern Intel architectures? -

jquery - Responsive Navbar with Sub Navbar -