如何在Node js的Loopback 4框架中应用Search API

时间:2019-12-21 12:33:20

标签: loopback4

我创建了一个get api,我想在其中通过查询参数中的名称应用搜索。也就是说,如果我们不在同一个api中输入查询参数,则会显示完整列表;如果我们输入任何查询参数,则只会显示该结果。我该怎么做??? 这是我的loopback4代码

         @get('/zones', {
responses: {
  '200': {
    description: 'Array of Zone model instances',
    content: {
      'application/json': {
        schema: {
          type: 'array',
          items: getModelSchemaRef(Zone, { includeRelations: true }),
        },
      },
    },
  },
},
})
async find(
 //@param.path.string('name') name: String,
@param.query.object('filter', getFilterSchemaFor(Zone)) filter?: Filter<Zone>,
): Promise<Zone[]> {
return this.zoneRepository.find({ include: [{ relation: 'cameras' }] });
 }

1 个答案:

答案 0 :(得分:0)

如果我理解正确,那么您想使用添加自定义逻辑来检查ss >> std::noskipws >> c; URL参数。

为此,我们可以编写以下内容:

?name=

这会将@get('/zones', { responses: { '200': { description: 'Array of Zone model instances', content: { 'application/json': { schema: { type: 'array', items: getModelSchemaRef(Zone, { includeRelations: true }), }, }, }, }, }, }) async find( @param.path.string('name') name: string, ): Promise<Zone[]> { return this.zoneRepository.find({ where: {name: name}, include: [{ relation: 'cameras' }] }); } 参数注入到函数中,然后将其作为ORM查询的一部分。