По соображениям производительности мне нужно написать новый метод в моей модели Rails, который выполняет произвольный SQL:
UPDATE table
SET col1 = ? AND col2 = ?
WHERE id = ?
Я понимаю, что я могу использовать ActiveRecord::Base.connection.execute
или ActiveRecord::Base.connection.update
со строкой SQL, чтобы получить нужные мне результаты, но какова правильная процедура для замены подстановщиков параметров (?
) фактическими значениями параметров? Есть ли метод Rails для интерполяции параметров в SQL-запрос, или это должно быть сделано только путем ручной интерполяции? Последнее кажется небезопасным...