我正在使用IBM API Connect作为Loopback应用程序 . 我有3个型号 - 主人,家和房间 . 这种关系描述如下:
所有者:
-
所有者可能有一个或多个家庭
-
家庭或所有房屋属于特定所有者
家:
-
一个家有一个以上的房间
-
所有房间都属于特定的房屋
就我而言,通过API Connect CLI,Owner是一个REST公开的模型(REST资源),并且应该通过一对多关系直接与Home模型相关 . Home&Room是两种不暴露于REST的模型 . Home通过一对多关系与Room直接相关 . 所有者和房间彼此不直接相关,但通过家庭模型相关 .
我想以这些形式获取HTTP URL:
/owners/{id}/homes/{id}/rooms/{id}
获取房主特定房屋的详细信息
我已经为Owner-Home和Home-Room选择了一对多的关系,分别是外键 . 由于它不是多对多的关系,我没有使用任何通过模型 .
我得到的URL没有任何Room对应物:
/owners/{id}/homes/{id}
任何想法我该怎么做?
1 回答
我相信你正在寻找一个名为
nestRemoting()
的功能 .以您的情况为例,您需要在引导文件中调用
Owner.nestRemoting('homes')
以启用嵌套 endpoints详情请参阅我们的文档:http://loopback.io/doc/en/lb2/Nested-queries.html
在loopback-example-relations中我创建了一个包含模型和关系的分支,以及如何获取嵌套远程apis工作,请检查:https://github.com/strongloop/loopback-example-relations/blob/example/nest-relation/server/boot/initNestRelation.js#L3-L4