在解析的json中选择,将id与id数组进行比较

时间:2017-02-25 12:17:55

标签: ruby-on-rails arrays json

我需要过滤数组结果(通过解析json得到)。

如果我知道我可以在json中使用

选择的确切ID
@my_art = ele_art.select { |articolo| articolo['id'] == 456 }

现在我有一个名为@myarray的id数组,我需要在ele_art中只选择数组中带id的项目

读取数组我有:

[279, 276]

我试过

@my_art = ele_art.select { |articolo| articolo['id'] == @myarray }

@my_art = ele_art.select { |articolo| articolo['id'] in @myarray }

没有运气!

我该如何解决?

1 个答案:

答案 0 :(得分:1)

@my_arrayid的数组,因此,在这种情况下,您需要检查articolo['id']中是否包含@myarray。对于这些情况,Ruby中的Array类具有include?方法,该方法接收object并且如果对象包含在数组中,则返回true / false。

所以,在你的情况下尝试类似:

@my_art = ele_art.select { |articolo| @myarray.include?(articolo['id']) }