Rails 3.1.2 скрипты ckeditor vendor - PullRequest
2 голосов
/ 22 ноября 2011

У меня проблема, аналогичная той, которая перечислена в в этом вопросе , за исключением того, что я не использую самоцвет ckeditor. Я использую сценарии CKEditor напрямую.

Я извлек их непосредственно в vendor/assets/javascripts/ckeditor и добавил эти включенные строфы в соответствующий файл манифеста javascript:

//= require ckeditor/ckeditor
//= require ckeditor/adapters/jquery

В разработке все работает отлично - я полагаю, потому что Rails обслуживает ресурсы напрямую. В производственной среде (и когда я переключаю свой локальный dev-сервер на производственную среду), редактор не загружается (только пробелы, как в вопросе, связанном выше), и я получаю такие ошибки загрузки:

Load errors

Эти пути явно неверны, и я не уверен, как это работает, даже в dev сейчас, когда я об этом думаю.

Кто-нибудь заставил эту установку работать должным образом, или я должен смириться с этим и просто использовать драгоценный камень, как все остальные, кажется?

1 Ответ

4 голосов
/ 23 ноября 2011

После нескольких часов работы я обнаружил, что моя проблема была двоякой.

Во-первых, есть глобальная опция CKEditor, которую вы можете установить, чтобы указать, где находится путь базовой установки.Чтобы установить это, я изменил свой application.js, добавив следующие две строки:

//= require_self
CKEDITOR_BASEPATH = "/assets/ckeditor/";

Во-вторых, моя конфигурация среды не была настроена для предварительной компиляции пары файлов CKEditor.Поэтому в config/environments/production.rb я добавил ckeditor/config.js и ckeditor/contents.css в массив файлов, которые я передаю config.assets.precompile.

РЕДАКТИРОВАТЬ: мне пришлось добавить еще несколько файлов в список прекомпиляции, чемтолько те, что перечислены здесь.Полный список может вводить в заблуждение, так как большинство этих файлов были из пользовательской темы.Достаточно просто загрузить Chrome Inspector или Firebug и посмотреть список активов, которые все еще возвращаются 404, добавить их в массив, перекомпилировать и посмотреть, исправило ли это.

...