Module: UnitMeasurements::Rails::ActiveRecord::Length

Defined in:
lib/unit_measurements/rails/unit_groups/length.rb

Overview

The UnitMeasurements::Rails::ActiveRecord::Length module provides a convenient way to define length-measured attributes in ActiveRecord models.

It acts as a wrapper for the measured method, simplifying the definition of length-measured attributes without directly invoking the measured method.

Author:

Since:

  • 1.1.0

Class Method Summary collapse

Class Method Details

.measured_length(*measured_attrs, **options) ⇒ void

This method returns an undefined value.

Defines length-measured attributes in the ActiveRecord model.

This method serves as a wrapper around the measured method and allows easy definition of length-measured attributes by accepting an array of attribute names along with their options.

Examples:

Define single length-measured attribute:

class Cube < ActiveRecord::Base
  measured_length :length
end

Define multiple length-measured attributes:

class Cube < ActiveRecord::Base
  measured_length :height, :width
end

Parameters:

  • measured_attrs (Array<String|Symbol>)

    An array of the names of length-measured attributes.

  • options (Hash)

    A customizable set of options

Options Hash (**options):

  • :quantity_attribute_name (String|Symbol)

    The name of the quantity attribute.

  • :unit_attribute_name (String|Symbol)

    The name of the unit attribute.

See Also:

Author:

Since:

  • 1.1.0



42
43
44
# File 'lib/unit_measurements/rails/unit_groups/length.rb', line 42

def measured_length(*measured_attrs, **options)
  measured(UnitMeasurements::Length, *measured_attrs, **options)
end