如何在rails_admin中的字段上启用CKEditor?

时间:2010-12-31 20:02:18

标签: ruby-on-rails ruby-on-rails-plugins

我是rails的新手,我最近发现了rails_admin。

我使用rails_admin文档中的命令添加了CKEditor,但我不知道如何在字段上启用它。

4 个答案:

答案 0 :(得分:12)

今天必须弄清楚这一点。这就是我开始工作的方式。在我的config / initializers / rails_admin.rb中,我进行了以下设置。

config.model MyModel do
  edit do
    field :description, :text do
      ckeditor do 
        true
      end
    end
  end
end

使用模型名称更改“MyModel”,使用要使用ckeditor的字段名称更改“:description”。同样在编辑块中,确保您拥有所有其他字段配置。

<强>更新

在较新版本的rails_admin中已弃用上述语法。

config.model MyModel do
  edit do
   configure :name, :ck_editor
  end
end

是这样做的新语法。

答案 1 :(得分:2)

要确保显示所有字段,请将其添加到rails_admin.rb:

   config.model Car do
      include_all_fields
     field :content, :text do
      ckeditor true
     end 
  end

此致

罗比

答案 2 :(得分:1)

好的,有人在2015年之后阅读此内容,上述解决方案已弃用,并会产生运行时错误。我尝试了它并得到以下错误:

  

不推荐使用'field(:foo){ckeditor true}'样式DSL。请改用'field:foo,:ck_editor'。

所以,使用新语法就像这样:

config.model MyModel do
  edit do
    field :description, :ck_editor, :text do
      label 'MyLabel'
    end
  end
end

顺便说一下,如果从参数中省略:text,这样可以正常工作。 使用rails-4.0.2,rack-pjax-0.8.0和ckeditor-4.1.4对此解决方案进行了测试。祝你好运!

答案 3 :(得分:0)

@Kris,@ tomcocca

我做了像tomcocca所示的上述片段,但我有一个主要问题。问题是,当我运行rake db:drop db:create db:migrate时,rails会抛出错误,因为表尚未初始化。

第二个问题是,当您定义这样的模型时,您必须在之后定义每个字段。所以在这种情况下,只有“description”显示,除非你添加其他字段。

关于第一个问题,这个宝石的作者回答了我的问题并写道:

Ruby on rails, run a method on server start 2.3 也许这应该包含在RailsAdmin中? 你可以处理拉动请求吗?

re:拉取请求(正在处理)

但是这个解决方案适用于我的两个问题:

config.models do
  fields_of_type :text do
    ckeditor true
  end 
end

这样ckeditor就会加载到我所有的textareas上,再加上所有其他模型的字段,加上我没有得到rake db的问题:drop db:create ...