ruby-on-rails - activeadmin中自定义页面上的CKEditor
问题描述
我遇到了以下问题:
我想在自定义页面(无模型)上添加一个表单来设计 mailjet 的电子邮件。我已经有了一个自定义页面和一个带有 CKEditor 输入和主题输入的表单。但主题字段未显示在页面上。
这是我的代码:
ActiveAdmin.register_page "Mail", namespace: :lku do
def send_mail
end
content do
panel 'Write mail' do
semantic_form_for :mail, :url => "lku/send_mail", method: :post do |f|
f.inputs do
f.input :subject, :input_html => { :name => 'subject' }
end
f.inputs do
f.input :text, as: :ckeditor, :input_html => { :name => 'text' }
end
end
end
end
end
这是结果:
当我添加
f.actions
看起来像这样
有人能帮助我吗?
解决方案
我能够在没有 ckeditor 的情况下重现该问题。只有表单的最后一个元素会显示。
我不确切知道发生了什么,但这与 Arbre 如何渲染您在content
块内生成的内容有关。
我的解决方案是这样
将表单内容转换为 .erb 并将表单移至下方
views/lku/mail/_mailform.html.erb
<%= semantic_form_for :mail do |f| %> <%= f.inputs do %> <%= f.input :subject %> <%= f.input :text %> <% end %> <%= f.actions %> <% end %>
在页面中包含表单
content do panel 'Write mail' do render partial: 'mailform' end end
看看您是否仍然可以使用常规 Rails 表单助手安装编辑器 - https://github.com/galetahub/ckeditor#form-helpers
推荐阅读
- linux - 发现文档中的 IdentityServer4 HTTP url
- react-native - 从 expo 访问 android 文件,如( manifest.xml )
- r - 替换两个数据框之间的值
- codeigniter - 如何在codeigniter中获取从数据库中检索到的数组的值?
- html - 你应该以什么顺序为同一个 HTML 元素声明“id”和“class”,为什么?
- android - 如何在 JSON 下面获取 Packing_charge 的 configurationVal?
- java - 在 Spring 项目中进行测试 - 使用 Mockito 将存储库注入服务
- elasticsearch - elasticsearch 字符串值 vs ids- 性能最佳实践
- java - Hibernate Spring Data 本机查询无法使用 MERGE INTO UPDATE set NULL
- sql - 在同一个表中比较一列