Class: Mv::Core::Validation::Builder::Presence

Inherits:
Base
  • Object
show all
Defined in:
lib/mv/core/validation/builder/presence.rb

Instance Attribute Summary

Attributes inherited from Base

#validation

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from Mv::Core::Validation::Builder::Base

Instance Method Details

#conditionsObject



8
9
10
11
12
13
14
# File 'lib/mv/core/validation/builder/presence.rb', line 8

def conditions
  null_stmt = "#{column_reference} #{allow_nil ? 'IS' : 'IS NOT'} NULL"
  blank_stmt = "LENGTH(TRIM(#{column_reference})) #{allow_blank ? '=' : '>'} 0"
  join_stmt = allow_nil || allow_blank ? 'OR' : 'AND'

  [{ statement: [null_stmt, join_stmt, blank_stmt].join(' '), message: message }]
end