class IMissValidator::Inspector::PresenceInspector
Check columns if defined not null, but no validator.
Constants
- IGNORE_COLUMN_NAMES
Public Class Methods
columns(model)
click to toggle source
# File lib/i_miss_validator/inspector/presence_inspector.rb, line 9 def self.columns(model) model.columns.select do |column| column.null == false && IGNORE_COLUMN_NAMES.include?(column.name) == false end end
inspect(model)
click to toggle source
# File lib/i_miss_validator/inspector/presence_inspector.rb, line 28 def self.inspect(model) missing_columns(model).map do |column| { column: column.name, missing_validator: :presence_validator, message: 'presence: true' } end end
missing_columns(model)
click to toggle source
# File lib/i_miss_validator/inspector/presence_inspector.rb, line 21 def self.missing_columns(model) validated_columns = validators(model).map(&:attributes).flatten.uniq columns(model).select do |column| validated_columns.include?(column.name.to_sym) == false end end
validators(model)
click to toggle source
# File lib/i_miss_validator/inspector/presence_inspector.rb, line 15 def self.validators(model) model.validators.select do |validator| validator.class == ActiveRecord::Validations::PresenceValidator end end