如何在active_admin formtastic中嵌入原始html
我正在尝试使用formtastic在active_admin模型中构建一个表单。 问题是我需要在表单内部或周围直接使用某个脚本标记和其他原始HTML内容。
我正在使用普通的表单块:
form do |f| f.inputs :name => "User Details", :for => :user do |user_form| user_form.input :first_name, :required => true ...
如何在两者之间嵌入一个简单的div标签? 甚至是脚本标签?
我想过使用render :partial
,但我想先知道上面的方法是否可行。 谢谢!
你可以像这样插入div或javascript:
f.form_buffers.last << content_tag(:div, "Div content here") f.form_buffers.last << javascript_tag("alert('hi');")
在当前的ActiveAdmin中,不推荐使用form_buffers。 相反,它可以执行以下操作:
insert_tag(Arbre::HTML::Div) { content_tag(:span, "foo") }
主动管理员根据他们的文档在Formtastic上创建了一个DSL
https://github.com/activeadmin/activeadmin/blob/master/docs/5-forms.md
所以你现在可以这样做:
form do |f| f.semantic_errors(*f.object.errors.keys) import_errors = self.controller.instance_variable_get("@errors") if import_errors.present? ul class: 'errors' do import_errors.each do |e| li e end end end # ... end