Class: Potter::Field

Inherits:
Object
  • Object
show all
Includes:
OptionHelpers
Defined in:
lib/potter/field.rb

Instance Method Summary collapse

Methods included from OptionHelpers

#assign_option!, #assign_options!

Constructor Details

#initializeField

Returns a new instance of Field.



18
19
20
# File 'lib/potter/field.rb', line 18

def initialize(**)
  assign_options!(**)
end

Instance Method Details

#optional?Boolean

Returns:

  • (Boolean)


22
# File 'lib/potter/field.rb', line 22

def optional? = !required?

#record!(klass) ⇒ Object



26
27
28
29
30
31
32
# File 'lib/potter/field.rb', line 26

def record!(klass)
  klass.attribute(name, type, default:)
  klass.normalizes(name, **normalizes) if normalizes?
  klass.validates(name, **validates) if validates?
  klass.enum(name, enum) if enum?
  self
end

#string?Boolean

Returns:

  • (Boolean)


24
# File 'lib/potter/field.rb', line 24

def string? = type.type == :string