0

我在 Squeel 中有以下查询:

languages = where{ (name == 'English') | 
 (name == 'Spanish')  | 
 (name == 'German')  | 
 (name == 'French')  | 
 ...
}

哪个工作得很好,但我想知道是否有一种方法可以遍历具有这些值的数组以更容易添加和删除语言。假设我创建了数组:

languages_array = %w[ English Spanish French ... ]

有没有办法在 Where 块中使用 Squeel 进行迭代?

我已经尝试了我能想到的一切,但没有成功。

谢谢。

4

2 回答 2

3

我认为这应该有效

where{name.in(languages_array)}
于 2013-07-10T10:40:17.527 回答
0

你不需要squeel这种类型的查询:where(name: languages_array)会做你需要的——它会翻译成

WHERE name IN ('English', 'Spanish', 'French', ...)

这可能是你需要的。

于 2013-07-10T10:40:40.900 回答