Class: ValidatesBySchema::ValidationOption

Inherits:
Object
  • Object
show all
Defined in:
lib/validates_by_schema/validation_option.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(klass, column) ⇒ ValidationOption

Returns a new instance of ValidationOption.



6
7
8
9
# File 'lib/validates_by_schema/validation_option.rb', line 6

def initialize(klass, column)
  @klass = klass
  @column = column
end

Instance Attribute Details

#columnObject

column here must be an ActiveRecord column i.e. MyARModel.columns.first



4
5
6
# File 'lib/validates_by_schema/validation_option.rb', line 4

def column
  @column
end

#klassObject

column here must be an ActiveRecord column i.e. MyARModel.columns.first



4
5
6
# File 'lib/validates_by_schema/validation_option.rb', line 4

def klass
  @klass
end

Instance Method Details

#define!Object



11
12
13
14
15
16
17
18
# File 'lib/validates_by_schema/validation_option.rb', line 11

def define!
  if association
    klass.validates association.name, presence: true unless column.null
  else
    options = to_hash
    klass.validates column.name, options if options.present?
  end
end