我正在尝试查看您是否可以使用字符串数组搜索数据库而不只是一个
if current_user.role == 'Coach'
@groups.each do |group|
@groupchats << group.id
end
else
@mygroups.each do |group|
@groupchats << group.group_id
end
end
@groupchatss = Chat.where("group_id= "+@groupchats.to_s+"").order('created_at DESC')
所以它在数据库中搜索group_id= [0,1,2,3]
或者数组实际上是什么
我想知道这是否真的可能
答案 0 :(得分:2)
您应该使用sql operator IN
来执行此操作。 Rails将为您生成正确的SQL查询:
@groupchatss = Chat.where(group_id: @groupchats).order('created_at DESC')
答案 1 :(得分:-1)
我相信在搜索数组
时,linq包含的效果会很好像:
db.mytable.where(p=>p.groupid.contains(myarray);