Rails where子句与数组匹配整数

时间:2015-08-24 12:41:00

标签: mysql ruby-on-rails arrays ruby-on-rails-4

我在从数据库中找到正确的记录时遇到了问题。这是我的问题:

c

其中@interested_individual = Profile.where('category_id = ?', @event.interests).all 是配置文件表中的列,其中包含整数值,category_id返回的数组为[“1”,“2”,“3”]

我想要的是获取@event.interests数组中category_id所在的所有配置文件。 请让我知道解决方案。提前致谢

2 个答案:

答案 0 :(得分:2)

此查询将转换为category_id IN [interest_ids...]

Profile.where(category_id: @event.interests).all

答案 1 :(得分:1)

你很亲密。使用IN

@interested_individual = Profile.where('category_id IN (?)', @event.interests).all

但是,如果您只想收集所有Profile条记录,我建议您find在这里:

@interested_individual = Profile.find(@event.interests)