Loopback - 3个模型之间的一对多关系
Loopback - one-to-many relation between 3 models
我正在使用 IBM API Connect 作为 Loopback 应用程序。我有 3 个模型 - 所有者、家庭和房间。关系描述如下:
所有者:
- 一位业主可能拥有一处或多处房屋
- 一个或所有房屋属于特定所有者
家:
- 一个家会有多个房间
- 所有房间都属于一个特定的家
在我的例子中,通过 API Connect CLI,Owner 是一个 REST 公开模型(REST 资源)并且应该通过一对多关系直接与 Home 模型相关。 Home & Room 是两个不暴露于 REST 的模型。 Home 通过一对多关系直接与 Room 相关。 Owner 和 Room 彼此没有直接关系,但通过 Home 模型相关。
我想获取这些形式的 HTTP URL:
/owners/{id}/homes/{id}/rooms/{id}
获取房主特定住宅的房间详细信息
我已经为拥有各自外键的 Owner-Home 和 Home-Room 选择了一对多关系。由于它不是多对多关系,我没有使用任何直通模型。
我得到的 URLs 没有任何对应的 Room :
/owners/{id}/homes/{id}
我该怎么做?
我相信您正在寻找一个名为 nestRemoting()
的函数。
以你的案例为例,你需要在boot文件中调用Owner.nestRemoting('homes')
来启用nest endpoints
详情请看我们的文档:http://loopback.io/doc/en/lb2/Nested-queries.html
在 loopback-example-relations 我创建了一个分支包含你的模型和关系,以及如何让 nest 远程 api 工作,请检查:
https://github.com/strongloop/loopback-example-relations/blob/example/nest-relation/server/boot/initNestRelation.js#L3-L4
我正在使用 IBM API Connect 作为 Loopback 应用程序。我有 3 个模型 - 所有者、家庭和房间。关系描述如下:
所有者:
- 一位业主可能拥有一处或多处房屋
- 一个或所有房屋属于特定所有者
家:
- 一个家会有多个房间
- 所有房间都属于一个特定的家
在我的例子中,通过 API Connect CLI,Owner 是一个 REST 公开模型(REST 资源)并且应该通过一对多关系直接与 Home 模型相关。 Home & Room 是两个不暴露于 REST 的模型。 Home 通过一对多关系直接与 Room 相关。 Owner 和 Room 彼此没有直接关系,但通过 Home 模型相关。
我想获取这些形式的 HTTP URL:
/owners/{id}/homes/{id}/rooms/{id}
获取房主特定住宅的房间详细信息
我已经为拥有各自外键的 Owner-Home 和 Home-Room 选择了一对多关系。由于它不是多对多关系,我没有使用任何直通模型。
我得到的 URLs 没有任何对应的 Room :
/owners/{id}/homes/{id}
我该怎么做?
我相信您正在寻找一个名为 nestRemoting()
的函数。
以你的案例为例,你需要在boot文件中调用Owner.nestRemoting('homes')
来启用nest endpoints
详情请看我们的文档:http://loopback.io/doc/en/lb2/Nested-queries.html
在 loopback-example-relations 我创建了一个分支包含你的模型和关系,以及如何让 nest 远程 api 工作,请检查: https://github.com/strongloop/loopback-example-relations/blob/example/nest-relation/server/boot/initNestRelation.js#L3-L4