class Datagrid::Helper::HtmlRow
Represents a datagrid row that provides access to column values for the given asset @example
row = datagrid_row(grid, user) row.class # => Datagrid::Helper::HtmlRow row.first_name # => "<strong>Bogdan</strong>" row.grid # => Grid object row.asset # => User object row.each do |value| puts value end
Attributes
asset[R]
grid[R]
options[R]
Public Class Methods
new(renderer, grid, asset, options)
click to toggle source
@!visibility private
# File lib/datagrid/renderer.rb, line 119 def initialize(renderer, grid, asset, options) @renderer = renderer @grid = grid @asset = asset @options = options end
Public Instance Methods
each(&block)
click to toggle source
Iterates over all column values that are available in the row param block [Proc] column value iterator
# File lib/datagrid/renderer.rb, line 133 def each(&block) (@options[:columns] || @grid.html_columns).each do |column| block.call(get(column)) end end
get(column)
click to toggle source
@return [Object] a column value for given column name
# File lib/datagrid/renderer.rb, line 127 def get(column) @renderer.format_value(@grid, column, @asset) end
to_s()
click to toggle source
# File lib/datagrid/renderer.rb, line 139 def to_s @renderer.send(:_render_partial, 'row', options[:partials], { :grid => grid, :options => options, :asset => asset }) end
Protected Instance Methods
method_missing(method, *args, &blk)
click to toggle source
Calls superclass method
# File lib/datagrid/renderer.rb, line 148 def method_missing(method, *args, &blk) if column = @grid.column_by_name(method) get(column) else super end end