Обновление: приведенное ниже решение относится к нескольким годам назад и применяется, когда Rail 2 был новым, а плагины все еще были распространены. Теперь, когда использование драгоценного камня является лучшим и стандартным решением, ответ ниже не применим к новым приложениям; вместо этого работает решение, опубликованное @TALlama. Я оставляю здесь этот ответ, потому что это рабочее решение, если ваше приложение устарело и все еще использует плагин.
Вы можете изменить плагин rails_xss, чтобы удалить это сообщение. Нарушающая часть плагина находится по адресу "/plugins/rails_xss/lib/rails_xss/erubis.rb". В самом верху файла обязательно:
require 'erubis/helpers/rails_helper'
Измените это требование, просто перенаправив стандартный вывод на фиктивный ввод-вывод перед требованием, и восстановите стандартный вывод, когда закончите, например:
stdout_original, $stdout = $stdout, StringIO.new
require 'erubis/helpers/rails_helper'
$stdout = stdout_original
Это некрасиво, но решает проблему относительно ненавязчивым способом. У меня была та же проблема, что и у OP, когда мне нужно было перенаправить вывод процесса «скрипт / запуск» в другой процесс, и erubis грубо нарушал соглашение о том, что компоненты / плагины rails молчат на передней панели stdout (именно по этой причине) , Приведенное выше решение - это то, что я придумал, и оно работает для меня.