天天看点

RailsTinyMce 另外一个Rails的tinymce介绍

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.

* paperclip git://github.com/thoughtbot/paperclip.git

* responds_to_parent http://responds-to-parent.googlecode.com/svn/trunk

* will_paginate git://github.com/mislav/will_paginate.git

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" %>

[url]http://github.com/sandipransing/rails_tiny_mce[/url]