このエディターを試してみましたが、イメージを簡単にインストールして更新できる既存のエディターである可能性があります。
私の答え: 今、私はこのエディターを使用しています。インストールは非常に簡単です。
私は、宝石'tiny_mce'
とcarrierwave
画像のアップロードにtinymceを使用しています。tinymce のセットアップは次のとおりです。
$(function() {
tinyMCE.init({
mode: "textareas",
editor_deselector: "plain",
theme: "advanced",
plugins: "advimage,inlinepopups,save,autosave",
external_image_list_url: '#{image_list_admin_static_images_url}',
relative_urls: false,
theme_advanced_buttons1: "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect",
theme_advanced_buttons22: "",
theme_advanced_buttons3: "",
theme_advanced_toolbar_location : "top",
theme_advanced_blockformats: "p,h2,h3,h4"
})
}
重要な部分はimage_list_admin_static_images_url
、私が持っている私のルートにあります:
resources :static_images do
get :image_list, :on => :collection
end
StaticImagesController のメソッドは次のようになります。
def image_list
@image_list = "var tinyMCEImageList = #{StaticImage.image_list.to_json}"
render :js => @image_list
end
そして、モデルにある image_list メソッドで:
def self.image_list
all.map{ |im| [im.alt, im.image.url] }
end
このセットアップは私にとっては完璧に機能しますが、自分のニーズに合わせてカスタマイズする必要があります。これがあなたを助けることを願っています。TinyMCE は本当に素晴らしく強力な wysiwyg エディターです。
chech
コメント セクションで提案されているように、このソリューションを で使用するために調整する方法は次のとおりactive_admin
です。
アクティブな管理内で使用するには、次のルートを置き換えるだけです
match "admin/model_name/:id/js_image_list", :action => "js_image_list", :controller => "admin/model_name"
。js_image_list
次に、アクティブな管理モデル ファイル内で呼び出されるアクションを作成します。tinyMCE.init の構成は次のとおりです。external_image_list_url : "js_image_list"
tinymce は Rails 3.1 で確実にサポートされているようです。ここにリンクがあります
http://rubygems.org/gems/tinymce-rails
Gemfile に以下を追加するだけです。
gem 'tinymce-rails'
jquery を使用するかどうかに応じて、application.js に追加する次のオプションがあります。
//= require tinymce-jquery
//= require tinymce
個人的には jquery を選択したので、コントローラー/ビューに対応する js.coffee ファイルにこの行を追加しました。
tinyMCE.init
mode: 'textareas',
theme: 'advanced'
jquery を使用したくない場合は、このスクリプトをビューに追加するだけです。
<script type="text/javascript">
tinyMCE.init({
mode: 'textareas',
theme: 'advanced'
});
</script>
tinymce と Rails のアセット パイプラインに問題がありました。また、フォントサイズを大きくしてtinymceを起動する方法も見つけていません。デフォルトのフォント サイズは非常に小さいです。
Twitter ブートストラップを使用している場合、1 つの素晴らしいオプションは次のとおりです。
https://github.com/jhollingworth/bootstrap-wysihtml5
HTML5 で動作するものが必要な場合は、次のようにします。
http://jejacks0n.github.com/mercury/
素晴らしい!