我尝试了这个editor,但收到了很多错误,可能存在一些编辑器,我可以轻松安装和更新图片。
我的回答: 现在我使用this editor,非常容易安装。
答案 0 :(得分:6)
我正在使用带有gem '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非常好用且非常强大的所见即所得。
在评论部分中建议使用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"
答案 1 :(得分:1)
似乎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>
答案 2 :(得分:0)
我遇到了tinymce和Rails资产管道问题。我还没有找到一种方法来增加字体大小。默认字体大小非常小。
如果您使用的是Twitter bootstrap,那么一个很棒的选择是:
https://github.com/jhollingworth/bootstrap-wysihtml5
如果你想要一些适用于HTML5的东西,我会选择:
http://jejacks0n.github.com/mercury/
真棒!