6

我重新认识了 Rails,我真的很喜欢 Active Admin。我想让 tinyMCE 与它一起用于文本区域。但是,我发现的任何说明都不完整。出于某种原因,我认为我在这里遗漏了一些非常简单的东西。

因此,例如,我安装了 tinymce-rails (3.4.9) 并按照说明进行操作 (https://github.com/sophlenz/tinymce-rails)。然而,这就是我认为我失败的地方:实际上启动了 tinyMCE。根据文档,我有两个选择:

  1. 使用 <%= tinymce %> 帮助器或...
  2. 像下面这样初始化它tinyMCE.init({ mode: 'textareas', theme: 'advanced' });

我尝试将后者添加到我的 active_admin.js 文件中,但无济于事。

如果有人可以指导我,我将不胜感激。

4

2 回答 2

15

我让它在做以下事情(在repo中描述的安装之外)

在 admin/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 脚本出现在管理布局的头部的原因。

在 javascripts/active_admin.js 中:

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

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

完成这些操作后,该正文输入(文本区域)上有一个功能齐全的编辑器。

于 2012-10-18T17:35:11.833 回答
0

您的 textarea 输入是否具有“类”属性或 tinyMCE 可以挂钩的属性?它可以从 javascript 控制台(firefox/chrome)工作吗?您是否在页面的头部(源)中检查了 tinymce.js 的存在。

我让它与一个部分表单一起工作,我必须为输入元素提供一个类,以便 tinymce 可以连接到它。

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

祝你好运

于 2012-05-02T15:28:17.290 回答