Module: FieldHelpers
- Included in:
- Volt::Model
- Defined in:
- lib/volt/models/field_helpers.rb
Overview
Provides a method to setup a field on a model.
Defined Under Namespace
Modules: ClassMethods Classes: InvalidFieldClass
Constant Summary collapse
- NUMERIC_CAST =
lambda do |convert_method, val| begin orig = val val = send(convert_method, val) if RUBY_PLATFORM == 'opal' # Opal has a bug in 0.7.2 that gives us back NaN without an # error sometimes. val = orig if val.nan? end rescue TypeError, ArgumentError => e # ignore, unmatched types will be caught below. val = orig end return val end
- FIELD_CASTS =
{ String => :to_s.to_proc, Fixnum => lambda {|val| NUMERIC_CAST[:Integer, val] }, Numeric => lambda {|val| NUMERIC_CAST[:Float, val] }, Float => lambda {|val| NUMERIC_CAST[:Float, val] }, Time => nil, TrueClass => nil, FalseClass => nil, NilClass => nil, Volt::Boolean => nil }
Class Method Summary collapse
Class Method Details
.included(base) ⇒ Object
89 90 91 92 |
# File 'lib/volt/models/field_helpers.rb', line 89 def self.included(base) base.class_attribute :fields_data base.send :extend, ClassMethods end |