Warm tip: This article is reproduced from serverfault.com, please click

其他-如何从Rails API查询对象列表?

(其他 - How to query a list of objects from a Rails API?)

发布于 2020-11-30 16:53:30

我正在尝试从Rails API查询对象列表。也就是说,假设我想用ID来获得的情况下247从某一个模型。

到目前为止,我最接近的猜测是将逗号分隔的ids字符串传递到常规resource/:id路由,然后我拆分参数,从中构造一个数组并将其传递给where调用。

它有效-但是,我觉得这不是完成我要完成的目标的干净方法。

所以我问你是否有Rails的处理方式

该网址应如何显示?如何从控制器读取传递的值?

Questioner
zcserei
Viewed
11
Dmitry Barskov 2020-12-01 01:40:33

我认为这应该是对接受ids参数的索引路径的过滤器

所以URL应该看起来像

/resource?ids[]=2&ids[]=4&ids[]=7

你可以通过以下方式找到这些资源

def index
  if params[:ids].blank?
    @resources = Resource.all
  else
    @resources = Resource.find(params[:ids])
  end
end