2012-05-02 46 views
5

我重新认识自己的Rails,我非常喜欢Active Admin。我想让tinyMCE在文本区域使用它。但是,我发现的任何说明都不完整。出于某种原因,我认为我错过了一些非常简单的东西。因此,例如,我安装了tinymce-rails(3.4.9)并遵循了说明(https://github.com/spohlenz/tinymce-rails)。但是,这里是我认为我失败的地方:实际启动tinyMCE。据该医生,我有两个选择:TinyMCE和ActiveAdmin for Rails

  1. 使用<%= TinyMCE的%>助手或...
  2. 初始化像下面tinyMCE.init({ mode: 'textareas', theme: 'advanced' });

我尝试添加了后者我的active_admin.js文件无济于事。

如果有人能指导我这一点,我会非常感激。

+0

第二个应该通常工作,你会得到任何js错误呢? – Thariama

回答

0

您的textarea输入是否有'class'属性或tinyMCE可以挂钩的东西?它是从JavaScript控制台(firefox/chrome)工作吗?您是否检查过网页头部(源代码)中是否存在tinymce.js。

我得到它与一个窗体部分工作,我不得不给一个类的输入元素,所以tinymce可以挂钩它。

<%= f.input :literature_nld, :input_html => { :class => 'tinymce', :size => "80x4" } %> 

好运

+0

谢谢。你的回应引发了另一个关于tinymce.js是否在我的页面头上的想法。锡金铁轨文件有点不清楚。事实证明,通过在我的active_admin.rb文件中添加对此的调用,我能够显示它。 非常感谢您的帮助! –

+0

虽然如果你接受了我的回答,本来会很好的,但我应该刚刚评论过。 –

13

我得到它的工作做以下的事情(外安装在repo描述)

在管理/ my_class.rb:

ActiveAdmin.register MyClass do 
    form do |f| 
    f.inputs do 
     f.input :body, :input_html => { :class => "tinymce" } 
    end 
    end 
end 

在初始值设定项/ active_admin.rb:

... 
config.register_javascript 'tinymce.js' 

这是实际得到的tinymce.js脚本显示在管理布局的头部。

JavaScript中/ active_admin.js:

//= require active_admin/base 
//= require tinymce 

$(document).ready(function() { 
    tinyMCE.init({ 
    mode: 'textareas', 
    theme: 'advanced' 
    }); 
}); 

做那些事情之后,该机构输入(文本区),对其有一个全功能的编辑器。

+0

良好的文档。适用于rails 3.2.13,active_admin 0.6.0和tinymce-rails 3.5.8.2。 – scarver2

+2

将'editor_selector:'tinymce''添加到'tinyMCE.init',以便只有特定的textareas才具有WYSIWYG编辑器。 – scarver2