Я настоятельно рекомендую вам попробовать WYSIHAT. Самая большая проблема с упомянутыми выше редакторами - это их громоздкий размер и "трудно настраиваемые" (возможности). Плохой код в большинстве этих редакторов сильно отталкивает. WYSIHAT больше похож на фреймворк для редактора WYSIWYG. Чрезвычайно легко настроить. Легко настраивается. И что еще ... Его поддерживают 37signals.Что я бы хотел в TinyMCE, так это его функция вставки из слова, которая сохраняет макет. Но если бы не одна эта функция, остальные мне показались бы очень громоздкими.
Прочтите, пожалуйста, эту статью: http://37signals.com/svn/posts/1330-introduction-wysihat-an-eventually-better-open-source-wysiwyg-editor
Учебное пособие по использованию WYSIHAT : Часть 1: http://jrmehle.com/2009/01/25/wysiwhat-wysihat-part-1/
Часть 2: http://jrmehle.com / 2009/02/13 / wysiwhat-wysihat-part-2 /
А чтобы сделать вашу жизнь еще проще, Джефф Крефтмейер (80beans.com) разработал для редактора 37signals WYSIHAT замечательный движок rails: {{1} } http://github.com/80beans/wysihat-engine
Вот статья Джеффа Крифтмейера: http://www.80beans.com/2009/10/ 01 / wysihat-engine /
Один из классических способов получить подобные встроенные файлы - это использовать редактор WYSIWYG, например TinyMCE . Я использовал плагин TinyMCE , а также TinyMCE Plus . Вероятно, есть плагины для самого TinyMCE, чтобы обрабатывать некоторые вещи встраивания.
Если вы начинаете разрешать некоторые теги в своих сообщениях, убедитесь, что вы защищаете себя от атак с использованием сценариев и т. Д., С помощью чего-то вроде sanitize , чтобы очистить теги, которые вы не хотите разрешать. Обязательно прочтите о XSS и внедрении HTML / JavaScript .
Попробуйте CKEditor for Rails . Это новая версия редактора FCK с очень чистым генератором HTML. Очень легко встраивать. Все, что вам нужно сделать, это заменить вспомогательный тег input (текстовая область) (для содержимого) другим вспомогательным тегом. Все прекрасно описано в проекте README . Вы можете загружать файлы (изображения) и использовать их в контенте прямо из CKEditor.