module Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage::ClassMethods

Private Instance Methods

_adjust_auto_validations_constraint_validations_presence_message() click to toggle source
# File lib/sequel/plugins/auto_validations_constraint_validations_presence_message.rb, line 43
def _adjust_auto_validations_constraint_validations_presence_message
  if @dataset &&
     !@auto_validate_options[:not_null][:message] &&
     !@auto_validate_options[:explicit_not_null][:message]

    @constraint_validations.each do |array|
      meth, column, opts = array

      if meth == :validates_presence &&
         opts &&
         opts[:message] &&
         opts[:allow_nil] &&
         (@auto_validate_not_null_columns.include?(column) || @auto_validate_explicit_not_null_columns.include?(column))

        @auto_validate_not_null_columns.delete(column)
        @auto_validate_explicit_not_null_columns.delete(column)
        array[2] = array[2].merge(:allow_nil=>false)
      end
    end
  end
end