Module: TypedAttribute::Type
- Defined in:
- lib/typed_attribute/type.rb
Constant Summary collapse
- IS_RAILS_5 =
defined?(ActiveModel) && ActiveModel.gem_version >= Gem::Version.new('5.0.0')
- DATETIME_TYPE =
Change type name for DateTime in Rails5 related: github.com/rails/rails/pull/24079
IS_RAILS_5 ? :datetime : :date_time
Class Method Summary collapse
Class Method Details
.cast_value(cast_type, value) ⇒ Object
23 24 25 |
# File 'lib/typed_attribute/type.rb', line 23 def self.cast_value(cast_type, value) ActiveModel::Type.lookup(flexible_type_name(cast_type)).cast(value) end |
.flexible_type_name(type) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/typed_attribute/type.rb', line 11 def self.flexible_type_name(type) if %i(date_time datetime).include?(type) DATETIME_TYPE else type end end |