Using the TinyMCE .zip package with the Ruby on Rails framework

Self-hosted instances of TinyMCE can be integrated into Ruby on Rails projects. This procedure creates a basic Ruby on Rails application containing a TinyMCE editor.

Prerequisites

This procedure requires the following programs:

Procedure

On a command line or command prompt:

  1. Create a new Ruby on Rails project.

    rails new myTinySite
  2. Navigate into the project directory.

    cd myTinySite/
  3. Create a new Rails controller, such as:

    rails generate controller Welcome index

    This creates a controller named Welcome with an action named index.

  4. Set the project home page to index.

    1. Using a text editor, open config/routes.rb, such as:

      nano config/routes.rb
    2. Add root 'welcome#index' to set index as the project home page. For example:

      Rails.application.routes.draw do
        get 'welcome/index'
      
        root 'welcome#index'
      end
  5. Add the following lines within the <head> element of app/views/layouts/application.html.erb to automatically include TinyMCE on pages using the application layout:

    <script src="/path/to/tinymce.min.js"></script>
    <script>
      tinymce.init({
        selector: '.tinymce',
        plugins: 'lists link image table code help wordcount'
      });
    </script>
  6. Create a <textarea> with the initial content Hello, World! for TinyMCE by adding the following lines to app/views/welcome/index.html.erb:

    <%= text_area_tag :content, "Hello, World!", :class => "tinymce" %>
  7. On a command line, from the project’s root directory, start the Ruby on Rails server.

    rails server

The page containing the TinyMCE will be accessible at http://localhost:<port>/ (default: http://localhost:3000/).