class CmAdmin::Models::Column
def find_by(model, search_hash)
def find_by(model, search_hash) model.available_fields.find { |i| i.name == search_hash[:name] } end
def format_header
def format_header self.header.present? ? self.header.to_s.gsub(/_/, ' ')&.upcase : self.field_name.to_s.gsub(/_/, ' ').upcase end
def initialize(field_name, attributes = {})
def initialize(field_name, attributes = {}) @field_name = field_name set_default_values attributes.each do |key, value| self.send("#{key.to_s}=", value) end #formatting header (either field_name or value present in header attribute) self.send("header=", format_header) self.height = 50 if self.field_type == :image && self.height.nil? self.width = 50 if self.field_type == :image && self.width.nil? end
def set_default_values
def set_default_values self.exportable = true self.managable = true self.lockable = false self.tag_class = {} end