Я должен был сделать это прошлой ночью, и следующий процесс работал.
Я не запускал задачу установки граблей, а просто скопировал необходимые ресурсы из каталога подключаемых модулей в каталог / assets (в отличие от каталога public / javascripts.
т.е. скопируйте каталог / vendor / plugins / puny_mce / public / javascripts / punymce
в / assets / punymce
Затем отредактируйте файл vendor / plugins / puny_mce / lib / puny_mce.rb
в нижней части метода include_puny_mce находится строка;
javascript_include_tag include_array
Это не работает в Rails 3, так как javascript_include_tag, похоже, не справляется с массивом включаемых файлов.
Я изменил файл, чтобы запустить метод javascript_include_tag несколько раз и вернуть объединенный результат. Это все еще не удалось.
Наконец, я обнаружил, что тег javascript_include возвращал «ActiveSupport :: SafeBuffer» (что бы там ни было, я раньше не использовал Rails 3 по такой причине и из-за отсутствия обратной совместимости).
Поэтому я просто преобразовал результат String в один из них, и он сработал.
Код, который работает, должен заменить:
javascript_include_tag include_array
с
tags=Array.new
include_array.each do |a|
tags.push(javascript_include_tag(a))
end
tag =tags.join(" ")
t=ActiveSupport::SafeBuffer.new(tag)
return t
Я уверен, что есть более элегантный способ, но это изменение, безусловно, заставляет его работать, но сначала это, безусловно, сработало в Rails 3.2.2
Приветствие
George