Loopbackjs 将多个项目与单个REST调用关联

Loopbackjs 将多个项目与单个REST调用关联,loopbackjs,Loopbackjs,我使用的是环回框架,modelA与modelB之间存在多对多关系。 我想知道是否有可能将多个项目从modelB关联到modelA。 当前有一种方法可以将一个项目与此调用关联: /modelA/{id}/modelB/rel/{fk} 有什么方法可以在批量操作中执行此操作吗?如果我正确理解您的问题,我想您只需通过过滤器即可。ModelA有许多ModelB,让我假设关系名为“ModelB” modelA.find({ where: [your filter option on model

我使用的是环回框架,modelA与modelB之间存在多对多关系。 我想知道是否有可能将多个项目从modelB关联到modelA。 当前有一种方法可以将一个项目与此调用关联:

/modelA/{id}/modelB/rel/{fk} 

有什么方法可以在批量操作中执行此操作吗?

如果我正确理解您的问题,我想您只需通过过滤器即可。ModelA有许多ModelB,让我假设关系名为“ModelB”

modelA.find({
    where: [your filter option on model A]
    include: {
        relation: 'modelBs',
        scope: {
            [your filters on model B]
        }
    }
})
以平静的方式:

/modelAs?filter[include]=modelBs&filter[where]....
官方文件可能会有所帮助:

似乎是这样

我相信您的模型名称以小写字母开头,但理想情况下应该是
ModelA
ModelB
,然后它们的实例可以保存在
ModelA
ModelB
变量中

要使用
add
方法,首先需要使用
ModelA.findById
找到
ModelA
的实例,您可以将其保存在
ModelA
变量中,然后使用以下代码:

modelA.modelBs.add(modelBFieldsObject, function(err, patient) {
  ...
});
其中modelBs应该是
ModalA.json
文件中关系的名称,如

"relations": {
    "modelBs": {
      "type": "hasMany",
      "model": "ModelB",
      "foreignKey": "modelAId",
      "through": "ModelAModelB",
      "keyThrough": "modelBId"
    }
    ...
我认为应该允许它传递一个
modelbfieldobject
数组来创建多个实例,如中所示

modelA.modelBs.add([modelBFieldsObject, modelBFieldsObject], function(err, patient) {
  ...
});
提示:为清晰起见,请以大写字母开头命名您的模型,并以
camelCase
格式命名它们的实例变量


引用:

我实际上想将记录添加到modelAmodelBs链接表中。我发现了如下示例:
modelA.modelBs.add(modelAObj,function(err){}),但我无法让它工作。