Module: ActiveModel::Type
- Defined in:
- lib/active_model/type/registry.rb,
lib/active_model/type.rb,
lib/active_model/type/date.rb,
lib/active_model/type/text.rb,
lib/active_model/type/time.rb,
lib/active_model/type/float.rb,
lib/active_model/type/value.rb,
lib/active_model/type/binary.rb,
lib/active_model/type/string.rb,
lib/active_model/type/boolean.rb,
lib/active_model/type/decimal.rb,
lib/active_model/type/integer.rb,
lib/active_model/type/date_time.rb,
lib/active_model/type/big_integer.rb,
lib/active_model/type/helpers/mutable.rb,
lib/active_model/type/helpers/numeric.rb,
lib/active_model/type/immutable_string.rb,
lib/active_model/type/unsigned_integer.rb,
lib/active_model/type/helpers/time_value.rb,
lib/active_model/type/decimal_without_scale.rb,
lib/active_model/type/helpers/accepts_multiparameter_time.rb
Overview
:stopdoc:
Defined Under Namespace
Modules: Helpers Classes: BigInteger, Binary, Boolean, Date, DateTime, Decimal, DecimalWithoutScale, Float, ImmutableString, Integer, Registration, Registry, String, Text, Time, UnsignedInteger, Value
Class Attribute Summary collapse
-
.registry ⇒ Object
:nodoc:.
Class Method Summary collapse
-
.lookup(*args, **kwargs) ⇒ Object
:nodoc:.
-
.register(type_name, klass = nil, **options, &block) ⇒ Object
Add a new type to the registry, allowing it to be referenced as a symbol by ActiveModel::Attributes::ClassMethods#attribute.
Class Attribute Details
.registry ⇒ Object
:nodoc:
26 27 28 |
# File 'lib/active_model/type.rb', line 26 def registry @registry end |
Class Method Details
.lookup(*args, **kwargs) ⇒ Object
:nodoc:
41 42 43 |
# File 'lib/active_model/type.rb', line 41 def lookup(*args, **kwargs) # :nodoc: registry.lookup(*args, **kwargs) end |
.register(type_name, klass = nil, **options, &block) ⇒ Object
Add a new type to the registry, allowing it to be referenced as a symbol by ActiveModel::Attributes::ClassMethods#attribute. If your type is only meant to be used with a specific database adapter, you can do so by passing adapter: :postgresql. If your type has the same name as a native type for the current adapter, an exception will be raised unless you specify an :override
option. override: true will cause your type to be used instead of the native type. override: false will cause the native type to be used over yours if one exists.
37 38 39 |
# File 'lib/active_model/type.rb', line 37 def register(type_name, klass = nil, **, &block) registry.register(type_name, klass, **, &block) end |