class ActiveAdmin::AbstractViewFactory
Public Class Methods
add_writer(name)
click to toggle source
# File lib/active_admin/abstract_view_factory.rb, line 12 def self.add_writer(name) define_singleton_method("#{name}=") do |value| value.builder_method name instance_variable_set :"@#{name}", value end end
register(view_hash)
click to toggle source
Calls superclass method
# File lib/active_admin/abstract_view_factory.rb, line 4 def self.register(view_hash) view_hash.each do |view_key, view_class| super view_key, view_class add_writer(view_key) send "#{view_key}=", view_class end end
Public Instance Methods
[](key)
click to toggle source
# File lib/active_admin/abstract_view_factory.rb, line 39 def [](key) send key end
[]=(key, value)
click to toggle source
# File lib/active_admin/abstract_view_factory.rb, line 43 def []=(key, value) send "#{key}=", value end
default_for(key)
click to toggle source
# File lib/active_admin/abstract_view_factory.rb, line 35 def default_for(key) self.class.send key end
register(view_hash)
click to toggle source
Register a new view key with the view factory
eg:
factory = AbstractViewFactory.new factory.register my_view: SomeViewClass
You can setup many at the same time:
factory.register my_view: SomeClass, another_view: OtherViewClass
# File lib/active_admin/abstract_view_factory.rb, line 31 def register(view_hash) self.class.register view_hash end