Rails Tiny MCE – A Rich Text Editor for ruby on rails

RailsTinyMCE – A Rich Text Editor for ruby on rails

TinyMCE is a javascript rich text editor. It is easy to integrate with blogs, cms, messages and mailers.
Plugin uses jrails(jquery) and paperclip plugin for upload support.

Features

  • Provides rich text editor
  • Customisable TinyMCE plugins
  • Easy to integrate
  • Supports Image upload & insert
  • Supports Media upload & Youtube embed
  • TODO: Document upload plugin

1. Install rails_tiny_mce plugin using

./script/plugin install git://github.com/sandipransing/rails_tiny_mce.git
./script/generate rails_tiny_mce_migration
rake db:migrate

2. Install jrails(jquery) plugin using

./script/plugin install git://github.com/aaronchi/jrails.git

3. Install dependent plugins(if you didn’t)

rake rails_tiny_mce:plugins
Above command will copy paperclip, responds_to_parent, will_paginate plugins to vendor/plugins directory.

4. In your layout add following lines

<%= javascript_include_tag :defaults %>
<%= javascript_include_tiny_mce_if_used %>
<%= tiny_mce if using_tiny_mce? %>

5. Inside controller class on top add following lines

uses_tiny_mce(:options => AppConfig.default_mce_options, :only => [:new, :edit])
This AppConfig.default_mce_options is in config/initializers/tiny_mce_plus_config.rb, you could change the setting there

6. In your view add class mceEditor to text_area

Then append the following to the text area you want to transform into a TinyMCE editor.
:class => "mceEditor"

7. Install file lists

rake rails_tiny_mce:install
will Install following files:
app
|-- controller
|-- attachments_controller.rb
|-- helpers
|-- remote_link_renderer.rb
|-- models
|-- print.rb
|-- video.rb
|-- views
|-- attachments
|-- _show_attachment_list.html.erb
config
|-- initializers
|-- tiny_mce_plus_config.rb
public
|-- images
|-- tiny_mce
|-- javascripts
|-- tiny_mce

You may custom the config in tiny_mce_plus_config.rb.

Attention Note:

  • Do not put <p> </p> around the textarea.
  • If you are using old will_paginate plugin, change the url_for to url_option in remote_link_renderer.rb

Example use:

  • Create CRUD for post
    ./script/generate scaffold post title:string text:description
  • Run Migrations
    rake db:migrate
  • Add following line to posts_controller.rb
    uses_tiny_mce(:options => AppConfig.default_mce_options, :only => [:new, :edit])
  • Open /views/posts/new.html.erb and /views/posts/edit.html.erb
  • Modifiy following line
    <%= f.text_area :description %> to <%= f.text_area :description, :class => “mceEditor” %>

One thought on “Rails Tiny MCE – A Rich Text Editor for ruby on rails

  1. i am using tinyMce editor in task description when i am generating pdf using prawn , rich text edior is not fully supported, why? ……. is there any solution ?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.