module ActiveRecord::Type

Constants

BigInteger
Binary
Boolean

Active Model Type Boolean

A class that behaves like a boolean type, including rules for coercion of user input.

Coercion

Values set from user input will first be coerced into the appropriate ruby type. Coercion behavior is roughly mapped to Ruby's boolean semantics.

  • “false”, “f” , “0”, 0 or any other value in FALSE_VALUES will be coerced to false

  • Empty strings are coerced to nil

  • All other values will be coerced to true

Decimal
Float
Integer
String
Value

Public Class Methods

register(type_name, klass = nil, **options, &block) Show source
# 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

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.

© 2004–2019 David Heinemeier Hansson
Licensed under the MIT License.