module ActiveAdmin::ViewHelpers::FormHelper
def active_admin_form_for(resource, options = {}, &block)
def active_admin_form_for(resource, options = {}, &block) Arbre::Context.new({}, self) do active_admin_form_for resource, options, &block end.content end
def fields_for_params(params, options = {})
-
(Array)
- of [Hash] with one element.
Parameters:
-
options
(Hash
) -- :namespace and :except -
params
(Hash
) --
def fields_for_params(params, options = {}) namespace = options[:namespace] except = options[:except].is_a?(Array) ? options[:except] : [options[:except]] params.flat_map do |k, v| next if namespace.nil? && %w(controller action commit utf8).include?(k.to_s) next if except.map(&:to_s).include?(k.to_s) if namespace k = "#{namespace}[#{k}]" end case v when String { k => v } when Symbol { k => v.to_s } when Hash fields_for_params(v, namespace: k) when Array v.map do |v| { "#{k}[]" => v } end when nil { k => '' } when TrueClass,FalseClass { k => v } else raise "I don't know what to do with #{v.class} params: #{v.inspect}" end end.compact end
def hidden_field_tags_for(params, options={})
def hidden_field_tags_for(params, options={}) fields_for_params(params, options).map do |kv| k, v = kv.first hidden_field_tag k, v, id: sanitize_to_id("hidden_active_admin_#{k}") end.join("\n").html_safe end