loopbackjs - 获取belongsTo关系中的完整json结构

标签 loopbackjs strongloop

我正在尝试通过创建 belongsTo 关系在 Loopback 中设置基本模型关系。

我有两个模型定义如下:

合约.json

{
  "name": "Contract",
  "base": "PersistedModel",
  "idInjection": false,
  "options": {
    "validateUpsert": true
  },
  "mssql": {
    "schema": "dbo",
    "table": "Contract"
  },
  "properties": {
    "contractid": {
       // some property stuff
    },
  "validations": [],
  "relations": {
    "employee": {
      "type": "belongsTo",
      "model": "Employee",
      "foreignKey": ""
    }
  },
  "acls": [],
  "methods": []
}

员工.json

{
  "name": "Employee",
  "base": "PersistedModel",
  "idInjection": false,
  "options": {
    "validateUpsert": true
  },
  "mssql": {
    "schema": "dbo",
    "table": "Employee"
  },
  "properties": {
    "employeeid": {
       // some property definitions...
    }
  },
  "validations": [],
  "relations": {
    "contracts": {
      "type": "hasMany",
      "model": "Contract",
      "foreignKey": ""
    }
  },
  "acls": [],
  "methods": []
}

当我对具有特定 idContract 执行 GET 请求时,我得到结果:

调用:/api/Contracts/55

{
  "contractid": 55,
  "employeeId": 83
}

到目前为止还不错。但是,当我对 Contract 执行 GET 请求时,还获取 Employee 我希望得到如下输出:

调用:/api/Contracts/55/employee

{
  "contractid": 55,
  "employee": {
      "employeeid": 83
  }
}

但相反,我只获取 Employee 对象,而没有其 Contract:

{
    "employeeid": 83
}

这是为什么呢?

我做错了什么吗?还是我的期望有误?

最佳答案

您可以执行/api/Contracts/55?filter[include]=employee

或者:

/api/Contracts/55?filter={"include":"employee"}

您可以通过添加“范围”部分来设置契约(Contract)模型默认范围以包含员工对象:

"scope": {
    "include": "employee"
  }

关于loopbackjs - 获取belongsTo关系中的完整json结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30932407/

相关文章:

mongodb - 如何通过存储库查询环回 4 中的特定字段?

node.js - 如何在node.js中安装Strongloop api并可以使用loopback

mongodb - 如何在 Strongloop 中使用 MongoDB 运算符

node.js - 使用StrongLoop的 "slc run"和 "node app.js"有什么区别

loopbackjs - Loopback.io 多个包含

node.js - 环回 acl 和 Ownerid

json - 如何在环回模型定义 JSON 文件中定义嵌入式属性

javascript - 在循环中获取属性的 sum() 而不循环遍历该对象的所有实例

javascript - 是否可以删除操作 Hook ?

node.js - JavaScript 不执行模型文件夹中的文件