class DisplayFor::Builder::Table
Public Instance Methods
build_actions(resource)
click to toggle source
# File lib/display_for/builder/table.rb, line 26 def build_actions(resource) result = [] @actions.each do |action| result << action.content(resource) end result.join(" ").html_safe end
build_header()
click to toggle source
# File lib/display_for/builder/table.rb, line 4 def build_header result = '' @attributes.each do |attribute| result << content_tag(:th, attribute.label(@resource_class), :class => "col_#{attribute.name}".underscore) end result << content_tag(:th, "Actions", :class => 'actions') if @actions.any? content_tag(:thead, content_tag(:tr, result.html_safe)) << "\n" end
build_row(resource)
click to toggle source
# File lib/display_for/builder/table.rb, line 14 def build_row(resource) result = '' @attributes.each do |attribute| result << content_tag(:td, attribute.content(resource), attribute.html_options) end result << content_tag(:td, build_actions(resource)) if @actions.any? options = {} options[:id] = "#{@resource_class}_#{resource.id}".underscore if resource content_tag(:tr, result.html_safe, options) << "\n" end
to_s()
click to toggle source
# File lib/display_for/builder/table.rb, line 36 def to_s result = "\n".html_safe @collection.each do |resource| result << build_row(resource) end result = build_header + content_tag(:tbody, result) if @footer result << content_tag(:tfoot, @footer.build_row(nil)) end html_options[:class] ||= "table table-bordered table-striped #{@resource_class.to_s.underscore}-table" content_tag(:table, result, html_options).html_safe end