Based on fckeditor project at RubyForge
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Fckeditor: Version 0.4.3

Scott Rutherford

Credits to:

"Integrate FCKEditor with your Ruby on Rails application" - By Joshua M Charles
"Implementation details for FCKEditor integration with Ruby on Rails" - 
"FCKEditor On Rails" -

And for the spell checker, which Ken Pratt created a patch for:

Ken Pratt:

Hongli Lai: For numerous patches and some nice tiding and the upgrade to 2.4.3

David Jones: and for the update_fckeditor rake task

Nicola Piccinini: for various bits and pieces


This plugin installs the FCKeditor editor into your rails app, along with some helpers to use in your views.


If you got this using:

ruby script/plugin install svn://

Then the install should of copied all the appropriate files to their homes. If you download a tar then you can either do

rake fckeditor:install 

from the root of your app, or the file will be installed the first time you startup after untaring the plugin.


Basically the whole of the FCKeditor suite is copied to: public/javascripts/fckeditor

There is a separate config file copied to: public/javascripts/fckcustom.js, that you can use to customize the install. This file is never overriden by upgrades or reinstalls


If you are hosting your rails app in a subdirectory you need to open:


and modify the FCKRelativePath = ''; to suite your needs.

For example if I have an app at

then the line should read:

FCKRelativePath = '/app';


Basically include this in the page you wish to use the editor in

<%= javascript_include_tag :fckeditor %>

Then instead of the normal textarea helper from Rails use this one

<%= fckeditor_textarea("object", "field", :toolbarSet => 'Simple', :width => '100%', :height => '200px') %>

Thats it unless you are using AJAX


To use a remote form you need to do something like this

<%= form_remote_tag :url => @options.merge(:controller => @scaffold_controller),
                    :before => fckeditor_before_js('note', 'text') %>

    <%= fckeditor_textarea( "note", "text", :ajax => true ) %> 

<%= end_form_tag %>

If you forget to put in the :before it won't work, you can also use the fckeditor_form_remote_tag described below

Multiple Editors in a form

To create a form using multiple editors use the fckeditor_form_remote_tag helper and pass the :editors option. This takes an hash of model symbol keys with each having 
an array as its value. The array should contain the list of fields that will have editors attached to them.

<%= fckeditor_form_remote_tag :url => @options.merge(:controller => @scaffold_controller),
                              :editors => { :multinote => ['text1', 'text2'] } %>

    <%= fckeditor_textarea( "multinote", "text1", :ajax => true ) %> 
    <%= fckeditor_textarea( "multinote", "text2", :ajax => true ) %> 

<%= end_form_tag %>

There is also a fckeditor_remote_form_for version.

Spell Check

Basically ensure you have aspell installed and available in your path. If running on Windows then the expected install path is:

'c:\program files\aspell\bin\aspell'

If you install elsewhere then you will need to update spell_check.rb in the plugin to mirror your path. Also make sure you have this line in your fckcustom.js file:

FCKConfig.SpellChecker = 'SpellerPages';