2013-04-30 83 views
3

我在我的rails 3應用程序中安裝了CKeditor gem。現在我想添加一些額外的插件。我查了一下ckeditor文檔,它說明插件文件需要去ckeditor解壓的地方。我是rails新手,我試圖找到我的ckeditor文件,但除了安裝ckeditor時創建的模型文件之外,我無法在應用程序目錄中找到它們。在rails 3中使用額外的插件修改Ckeditor 3

我應該在哪裏爲我的自定義ckeditor插件放置文件,以便在初始化時將它們包含在編輯器中?

編輯: 根據下面的答案在所提到的目錄中添加插件文件。試圖config.js加載使用下面的命令插件CKEditor的:

CKEDITOR.editorConfig = function(config) 
{ 
CKEDITOR.plugins.addExternal('insert_blank','http://localhost:3000/assets/ckeditor/plugins/insert_blank/', 'plugin.js'); 
var temp = CKEDITOR.registered; 
alert(temp) ; 
    config.extraPlugins = 'insert_blank' ; 
    config.toolbar = 
    [ 

     { name: 'basicstyles', items : [ 'Bold','-','Italic' ] }, 

     { name: 'insert', items : [ 'Image','insert_blank.btn' 
       ] }, 

    ]; 
    config.toolbar.push(['insert_blank.btn']); 
    config.height = 300 ; 
    config.width = 300 ; 
    config.removePlugins = 'elementspath,resize' ; 


}; 

這是我plugin.js文件:

CKEDITOR.plugins.add('insert_blank', 
{ 
    init: function(editor) 
    { 


       editor.addCommand('InsertBlank', 
       { 
        exec function(editor) 
        { 
        editor.insertHtml('__'); 
        } 
      }); 
     editor.ui.addButton('insert_blank.btn', 
     { 
      label: 'Insert Blank', 
      command: 'InsertBlank', 
      icon: this.path + 'images/blank.png' 
     }); 
     } 
}) ; 

我給的絕對路徑,只是因爲我在開發中,稍後會改變。上面的警報產生'未定義'。我檢查了我的服務器日誌,這些文件是由應用程序服務器找到的。看起來我不能將插件正確添加到ckeditor。任何關於什麼可能出錯的想法?

更新:我的plugin.js出現了一些錯誤。其他一切都很好。

+0

你是如何安裝ckeditor的?我不熟悉ruby,但通常你會通過將它解壓到網站目錄來「安裝」ckeditor。 – Alko 2013-04-30 11:46:10

+0

Rails有Gems的概念。我剛剛在gems目錄中找到ckeditor文件夾,但它沒有插件文件夾。我應該創建一個並將其新插件放入其中嗎? – Superq 2013-04-30 11:49:57

+0

我不知道寶石:P但是,我認爲你應該創建文件夾,然後你就可以走了。 – Alko 2013-04-30 11:53:48

回答

10

您可以將所有插件放入應用程序的資產文件夾中。

app/assets/javascript/ckeditor/plugins中創建一個文件夾,並將所有插件文件放在這裏。

+0

謝謝!將嘗試,並接受,如果它的工作。 – Superq 2013-04-30 11:54:58

+0

我這樣做了,修改了我的config.js文件以包含插件。我的ckeditor因爲它而無法加載。我可以在任何地方查看ckeditor的錯誤日誌嗎?我正在關注此文檔:http://docs.ckeditor.com/#!/guide/dev_plugins – Superq 2013-04-30 12:25:00

+0

檢查瀏覽器控制檯是否有任何錯誤。您還應該檢查是否包含插件js文件。 – AlexBrand 2013-04-30 13:54:28