Я вручную создаю SQL-запрос, в котором я использую массив в хэше params для оператора SQL IN, например: ("WHERE my_field IN ('blue', 'green', 'red')"),Поэтому мне нужно взять содержимое массива и вывести его в строку, где каждый элемент заключен в одинарные кавычки и разделен запятой (и без запятой).
Итак, если массив был: my_array = ['blue','green','red']
Мне нужна строка, которая будет выглядеть следующим образом: "'blue','green','red'"
Я довольно новичок в Ruby / Rails, но придумала что-то, что сработало:
if !params[:colors].nil?
@categories_array = params[:colors][:categories]
@categories_string =""
for x in @categories_array
@categories_string += "'" + x + "',"
end
@categories_string.chop! #remove the last comma
end
ИтакМне хорошо, но любопытно, как будет выглядеть правильный и более продуманный способ сделать это?