Class: ResourceRenderer::ResourceRenderer::Base

Inherits:
Object
  • Object
show all
Defined in:
app/resource_renderers/resource_renderer/resource_renderer/base.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(resource, helper) ⇒ Base

Returns a new instance of Base.



6
7
8
# File 'app/resource_renderers/resource_renderer/resource_renderer/base.rb', line 6

def initialize(resource, helper)
  @resource, @helper = resource, helper
end

Instance Attribute Details

#helperObject

Returns the value of attribute helper.



4
5
6
# File 'app/resource_renderers/resource_renderer/resource_renderer/base.rb', line 4

def helper
  @helper
end

#resourceObject

Returns the value of attribute resource.



4
5
6
# File 'app/resource_renderers/resource_renderer/resource_renderer/base.rb', line 4

def resource
  @resource
end

Instance Method Details

#association(*args, &block) ⇒ Object



24
25
26
27
28
# File 'app/resource_renderers/resource_renderer/resource_renderer/base.rb', line 24

def association(*args, &block)
  options = args.extract_options!
  options[:as] = :association
  column(*args, options, &block)
end

#display(attribute_name, options = {}, &block) ⇒ Object



16
17
18
19
20
21
22
# File 'app/resource_renderers/resource_renderer/resource_renderer/base.rb', line 16

def display(attribute_name, options = {}, &block)
  attribute_renderer_name = options.delete(:as) if options.has_key?(:as)
  label = options.delete(:label)
  label ||= extract_label(attribute_name)

  attribute_renderer(attribute_name, attribute_renderer_name, &block).display(attribute_name, label, options, &block)
end

#render(&block) ⇒ Object



10
11
12
13
14
# File 'app/resource_renderers/resource_renderer/resource_renderer/base.rb', line 10

def render(&block)
  helper.capture do
    block.call(self)
  end
end

#resource_classObject



30
31
32
# File 'app/resource_renderers/resource_renderer/resource_renderer/base.rb', line 30

def resource_class
  @resource_class ||= resource.class
end