2013-06-21 5 views
5

Я использую CKEditor с драгоценным камнем CKEditor (https://github.com/galetahub/ckeditor), и все работает правильно, пока я не попытаюсь добавить пользовательскую панель инструментов.Добавить пользовательскую панель инструментов в CKEditor в рельсах

Некоторые сообщения, которые я видел, предлагают использовать файл config.js. Однако при настройке в соответствии с инструкциями в файле app/assets/javascripts нет файла /ckeditor/config.js. Кроме того, если я добавлю /ckeditor/config.js в каталог javascripts, функция загрузки файлов перестанет работать. Это происходит, даже если config.js является пустым файлом. Вкладка «Загрузить» становится скрытой и не работает с перезагрузкой сервера.

Есть ли способ, которым я могу универсально настроить панель инструментов? Или даже если я могу просто пару вниз варианты встроенных или что-то, что было бы полезно ...

Использование Rails 3.2.11

В моей Gemfile у меня есть:

gem "jquery-rails", "~> 2.2.1" 
gem "ckeditor" 
gem "carrierwave" 
gem "mini_magick" 
gem "cloudinary" 

В application.rb у меня есть:

config.autoload_paths += %W(#{config.root}/app/models/ckeditor) 

В заявке. JS У меня есть:

//= require jquery 
//= require jquery_ujs 
//= require bootstrap 
//= require ckeditor/init 
//= require_tree ../../../vendor/assets/javascripts/. 
//= require_tree . 

В моей форме я имею:

= f.cktext_area :content 

config.js файл я попытался использовать:

CKEDITOR.editorConfig = function(config) { 
    config.toolbar_Custom = [ 
    { name: 'document', items : [ 'Source','-','Save','NewPage','DocProps','Preview','-','Templates' ] }, 
    { name: 'clipboard', items : [ 'PasteFromWord','-','Undo','Redo' ] }, 
    { name: 'insert',  items : [ 'Image','Table','HorizontalRule','SpecialChar','PageBreak' ] }, 
    { name: 'tools',  items : [ 'Maximize', 'ShowBlocks','-','About' ] }, 
    '/', 
    { name: 'basicstyles', items : [ 'Bold','Italic','Underline','Strike','Subscript','Superscript','-','RemoveFormat' ] }, 
    { name: 'paragraph', items : [ 'NumberedList','BulletedList','-','Outdent','Indent','-','Blockquote','-','JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock','-','BidiLtr','BidiRtl' ] }, 
    { name: 'links',  items : [ 'Link','Unlink','Anchor' ] }, 
    '/', 
    { name: 'styles',  items : [ 'Styles','Format','Font','FontSize' ] }, 
    { name: 'colors',  items : [ 'TextColor','BGColor' ] } 
    ]; 

    config.toolbar = 'Custom'; 
}; 

ответ

1

Вы должны создать свой собственный файл config.js вручную. Чтобы сохранить вкладку Загрузка, следить за этим вопросом на CKEditor гем репо, который объясняет, как ее решить:

https://github.com/galetahub/ckeditor/issues/238

Просто вставьте ссылочный конфиг Javascript для FileBrowser в файл config.js и на вкладке Загрузка вернется с полной функциональностью.