Разделение параметров - хорошая идея.
conditions = "Param1,Param2,Param3, Param4".gsub(" ","").split(',')
Если достаточно поиска без масок или регулярных выражений, вы можете использовать запрос IN
или AR: Model.where(column_name: conditions)
В противном случае (по крайней мере, в postgresql) код немного усложняется.
Построить строку запроса из входной строки:
conditions = "Param1,Param2,Param3, Param4".gsub(" ","").split(',')
query = ("column_name ~* ? OR " * conditions.size)[0...-3] # Delete last unterminated " OR"
И наконец
Model.where(query, *conditions) # splat operator (*) converts array into argument list
Должно работать.