Sha256: f6ff4d7afe99f36a50a32a16226a044f3ad820c77f15bbcc40d5ced42ed0d14a
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
# frozen_string_literal: true module DynamicScaffold module List class Item attr_reader :classnames, :html_attributes def initialize(config, *args, block) @config = config @html_attributes = args.extract_options! @classnames = @html_attributes.delete(:class) @attribute_name = args[0] @block = block @show_only = nil end def show_only(&block) @show_only = block self end def show?(view, record) return true if @show_only.nil? view.instance_exec(record, &@show_only) end def value(view, record) if @block view.instance_exec(record, @attribute_name, &@block) else record.public_send(@attribute_name) end end def label(label = nil) if label @label = label self elsif @label @label elsif @attribute_name @config.model.human_attribute_name @attribute_name end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dynamic_scaffold-2.0.1 | lib/dynamic_scaffold/list/item.rb |
dynamic_scaffold-2.0.0 | lib/dynamic_scaffold/list/item.rb |