Namespace
Module
Class
- ActiveRecord::Type::AdapterSpecificRegistry
- ActiveRecord::Type::BigInteger
- ActiveRecord::Type::Binary
- ActiveRecord::Type::Boolean
- ActiveRecord::Type::Date
- ActiveRecord::Type::DateTime
- ActiveRecord::Type::Decimal
- ActiveRecord::Type::DecorationRegistration
- ActiveRecord::Type::Float
- ActiveRecord::Type::ImmutableString
- ActiveRecord::Type::Integer
- ActiveRecord::Type::Json
- ActiveRecord::Type::Registration
- ActiveRecord::Type::String
- ActiveRecord::Type::Time
- ActiveRecord::Type::Value
Methods
Constants
BigInteger | = | ActiveModel::Type::BigInteger |
Binary | = | ActiveModel::Type::Binary |
Boolean | = | ActiveModel::Type::Boolean |
Active Model Type BooleanA class that behaves like a boolean type, including rules for coercion of user input. CoercionValues set from user input will first be coerced into the appropriate ruby type. Coercion behavior is roughly mapped to Ruby's boolean semantics.
|
||
Decimal | = | ActiveModel::Type::Decimal |
Float | = | ActiveModel::Type::Float |
ImmutableString | = | ActiveModel::Type::ImmutableString |
Integer | = | ActiveModel::Type::Integer |
String | = | ActiveModel::Type::String |
Value | = | ActiveModel::Type::Value |
Class Public methods
register(type_name, klass = nil, **options, &block)
Add a new type to the registry, allowing it to be referenced as a symbol by ActiveRecord::Base.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.
📝 Source code
# File activerecord/lib/active_record/type.rb, line 37
def register(type_name, klass = nil, **options, &block)
registry.register(type_name, klass, **options, &block)
end
🔎 See on GitHub