Class: MoneyAttribute::IntegerAmountType

Inherits:
AmountType
  • Object
show all
Defined in:
lib/money_attribute/type.rb

Overview

Type for integer columns storing subunits (e.g. cents).

Instance Method Summary collapse

Methods inherited from AmountType

#assert_valid_value, #cast

Instance Method Details

#deserialize(value) ⇒ Mint::Money?

Deserializes a subunit integer into a Mint::Money value.

Parameters:

  • value (Integer, nil)

    the raw database value

Returns:

  • (Mint::Money, nil)


38
# File 'lib/money_attribute/type.rb', line 38

def deserialize(value) = value && Money.from_subunits(value.to_i, MoneyAttribute.default_currency)

#serialize(value) ⇒ Integer?

Serializes a Mint::Money value into subunits.

Parameters:

  • value (Mint::Money, nil)

Returns:

  • (Integer, nil)


44
# File 'lib/money_attribute/type.rb', line 44

def serialize(value) = value&.subunits